باستخدام بيانات تحميل MySQL Insile مع محددات الأحرف غير القابلة للتحقيق

StackOverflow https://stackoverflow.com/questions/1493650

سؤال

لدي بعض بيانات البائع التي تحتوي على Soh (حرف ASCII 1) كمسؤول الحقل و STX (حرف ASCII 2) كمسؤول رقمي. هل من الممكن تحميل هذه البيانات مع تحميل بيانات تحميل دون معالجة الملف مسبقا واستبدال تلك الأحرف بشيء أكثر شيوعا؟

هل كانت مفيدة؟

المحلول

لقد فهمت.

LOAD DATA LOCAL INFILE 'myfile.txt' INTO TABLE my_table 
    CHARACTER SET UTF8 
    FIELDS TERMINATED BY X'01'
    LINES TERMINATED BY X'02'
    (col1, col2, col3);

نصائح أخرى

قد تحاول FIELDS TERMINATED BY _ascii 0x02. وبعد أنا لا أعرف ما إذا كان سيعمل من أجل LOAD DATA INFILE, ، لكنها تعمل في SELECT (بمعنى آخر، SELECT _ascii 0x61 غلة "أ").

إذا كنت تستخدم MySQLIMPORT، فإن تنسيق قيم سداسي عشرية في الحقول التي تم إنهاءها والخطوط التي تم إنهاءها من قبل:

MySQLIMPORPORT - Local - Suser = اسم المستخدم - Spassword = Secret - Lineore-Lines = 4 - Default-Arttifter-set = utf8 - تم إنهاء بواسطة = 0x01 - تم إنهاء بواسطة = 0x02 - Verbose Databasename thefiletoimport.

يمكنك تجربة فقط إرسال Char ASCII مباشرة داخل السلسلة الحرفية .. إذا كان اتصالك ليس لديه شحن مجاني أو ترميز معين، فقد يقبل ذلك ببساطة كسلسلة صالحة. يجب عليك القيام بذلك من خلال اتصال الشبكة أو بيانات الأنابيب إلى عميل MySQL. لا أعتقد أنك ستتمكن من كتابة ذلك في وحدة التحكم.

الحقول التي تم إنهاؤها بواسطة X'01

تناسبني

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top