ចូលប្រើ MySQL ដោយប្រើគ

ជាមួយនឹងការបង្រៀននេះខ្ញុំធ្វើបទបង្ហាញដល់សហគមន៍អំពីវិធីចូលប្រើឃ្លាំងទិន្នន័យ MySQL ពីភាសាសរសេរកម្មវិធី C និងដោយមិនប្រើភាពអាស្រ័យច្រើនពេកដោយគ្រាន់តែ

libmysqlclient

ខ្ញុំសង្ឃឹមថាវាមានប្រយោជន៍សម្រាប់អ្នកដែលត្រូវការឯកសារប្រភេទនេះហើយដូច្នេះបន្តចូលរួមចំណែកដល់សហគមន៍អេសអិលហើយជួយអ្នកដែលមិនមានអ៊ិនធឺណេត។

ការកំណត់រចនាសម្ព័ន្ធ

ដំបូងយើងត្រូវពិនិត្យមើលថាយើងបានតំឡើងបណ្ណាល័យរចនា *-dev ដើម្បីអាចចូលដំណើរការពី C / C ++ ទៅ MySQL ។

mysql_config -លីប

វាគួរតែលេចឡើងអ្វីមួយដូចនេះ៖

-Wl, -Bsymbolic- មុខងារ –L / usr / lib / mysql -lmysqlclient rdynamic

ក្នុងករណីដែលអ្នកពិនិត្យមើលថាបណ្ណាល័យមិនត្រូវបានតំឡើងយើងតំឡើងវាដោយប្រើពាក្យបញ្ជាដូចខាងក្រោមៈ

sudo apt-get install libmysqlclient-dev mysql_config --cflags -I / usr / include / mysql -DBIG_JOINS = 1 -fno-តឹងរឹង - ហៅក្រៅ -DUNIV_LINUX -DUNIV_LINUX

ដោយយើងផ្ទៀងផ្ទាត់និងតំឡើងនូវអ្វីដែលយើងត្រូវការសំរាប់ភ្ជាប់រវាង MySQL និង C យើងបន្តទៅការបង្កើតប្រព័ន្ធទិន្នន័យ៖

បង្កើតតេស្ត DATABASE; តេស្ត USE; បង្កើតទិន្នន័យតារាង (លេខសំងាត់ int AUTO_INCREMENT NULL NIM PRIMARY, ឈ្មោះ varchar (40), អាយុ int); បញ្ចូលទិន្នន័យ VALUES (NULL, 'អាលម៉ា Hernandez', ២៨), (NULL, 'Jose Sanchez', ៣៩), (NULL, 'Martin loera', ២៥), (NULL, 'Leonardo Cortez', ២៦), (NULL , 'Gustavo Romero', ២៥);

ការសរសេរកម្មវិធីនិងការចងក្រង

យើងបន្តបង្កើតលេខកូដ៖

Query.c

/ * បណ្ណាល័យត្រូវប្រើ * / # រាប់បញ្ចូល បណ្ណាល័យ * ដែលអនុញ្ញាតឱ្យយើងប្រើការតភ្ជាប់និងសំណួរជាមួយ MySQL * / # រាប់បញ្ចូល / * ដើម្បីប្រើ printf ។ ល។ * / int មេ () {MYSQL * conn; / * ការតភ្ជាប់អថេរសម្រាប់ MySQL * / MYSQL_RES * res; អថេរ / * ដែលនឹងមានលទ្ធផលនៃសំណួរ * / MYSQL_ROW ជួរដេក; អថេរ / * ដែលនឹងមានវាលសម្រាប់កំណត់ត្រានីមួយៗដែលបានពិគ្រោះ * / char * server = "localhost"; / * អាស័យដ្ឋានម៉ាស៊ីនមេ 127.0.0.1, localhost ឬ ip address * / char * user = "root"; / * អ្នកប្រើដើម្បីសាកសួរមូលដ្ឋានទិន្នន័យ * / char * password = "root"; / * ពាក្យសម្ងាត់សម្រាប់អ្នកប្រើប្រាស់ក្នុងសំណួរ * / char * មូលដ្ឋានទិន្នន័យ = "សាកល្បង"; / * ឈ្មោះនៃមូលដ្ឋានទិន្នន័យដើម្បីសាកសួរ * / conn = mysql_init (NULL); / * ការចាប់ផ្តើមលុបចោលការតភ្ជាប់ * / / * ភ្ជាប់ទៅនឹងឃ្លាំងទិន្នន័យ * / ប្រសិនបើ (! mysql_real_connect (conn, server, អ្នកប្រើប្រាស់, password, database, 0, NULL, 0)) {/ * កំណត់ប៉ារ៉ាម៉ែត្រតភ្ជាប់ដែលបានកំណត់ពីមុន * / fprintf (stderr, "% s \ n", mysql_error (conn)); / * ប្រសិនបើមានកំហុសកំណត់ថាតើកំហុសមួយណាគឺ * / ចេញ (១); } / * ផ្ញើសំណួរ SQL * / ប្រសិនបើ (mysql_query (conn ជ្រើសរើស "ពីទិន្នន័យ")) {/ * និយមន័យនៃសំណួរនិងប្រភពដើមនៃការតភ្ជាប់ * / fprintf (stderr, "% s \ n", mysql_error ( conn)); ចេញ (1); } res = mysql_use_result (conn);
	printf("អត្តសញ្ញាណ \ t ឈ្មោះ" \ t \ អាយុ \ n "); ខណៈពេល ((ជួរដេក = mysql_fetch_row (res))! = NULL) / * រង្វិលជុំតាមរយៈអថេរ res ជាមួយកំណត់ត្រាទាំងអស់ដែលទទួលបានសម្រាប់ប្រើ * /
		printf("% s \ t% s \ t% s \ n", ជួរ [0], ជួរ [1], ជួរ [2]); / * អថេរជួរដេកក្លាយជាអារេសម្រាប់ចំនួនវាលក្នុងតារាង * / / * អថេរ res ត្រូវបានចេញផ្សាយហើយការតភ្ជាប់ត្រូវបានបិទ * / mysql_free_result (res); mysql_close (conn); }

យើងចងក្រងជាមួយ៖

gcc -o សំណួរ $ (mysql_config --cflags) Query.c $ (mysql_config -–libs)

ការផ្ទៀងផ្ទាត់

យើងប្រតិបត្តិ

./Query

ប្រភព: ប្លក់របស់ហ្គូហ្គោ ៤២៩៥


ខ្លឹមសារនៃអត្ថបទប្រកាន់ខ្ជាប់នូវគោលការណ៍របស់យើង ក្រមសីលធម៌វិចារណកថា។ ដើម្បីរាយការណ៍ការចុចកំហុស នៅទីនេះ.

៥៧ យោបល់ទុកអ្នក

ទុកឱ្យយោបល់របស់អ្នក

អាសយដ្ឋានអ៊ីមែលរបស់អ្នកនឹងមិនត្រូវបានបោះពុម្ភ។ អ្នកគួរតែអនុវត្តតាម *

*

*

  1. ទទួលខុសត្រូវចំពោះទិន្នន័យ: មីហ្គែល - ហ្គែលហ្គេតថន
  2. គោលបំណងនៃទិន្នន័យ៖ គ្រប់គ្រង SPAM ការគ្រប់គ្រងមតិយោបល់។
  3. ភាពស្របច្បាប់៖ ការយល់ព្រមរបស់អ្នក
  4. ការប្រាស្រ័យទាក់ទងទិន្នន័យ៖ ទិន្នន័យនឹងមិនត្រូវបានទាក់ទងទៅភាគីទីបីឡើយលើកលែងតែកាតព្វកិច្ចផ្នែកច្បាប់។
  5. ការផ្ទុកទិន្នន័យ៖ មូលដ្ឋានទិន្នន័យដែលរៀបចំដោយបណ្តាញ Occentus (EU)
  6. សិទ្ធិ៖ នៅពេលណាដែលអ្នកអាចដាក់កម្រិតទាញយកមកវិញនិងលុបព័ត៌មានរបស់អ្នក។

  1.   កូរ៉ាសស៊ូគី dijo

    ល្អដែលបានរក្សាទុកនៅក្នុងឃ្លាំងនៃស្គ្រីបនិងការបង្រៀនរបស់ខ្ញុំនៅលើកុងសូល! +1 សម្រាប់អ្នកដៃគូ ...

  2.   Rodrigo dijo

    សួស្តីសូមអបអរសាទរចំពោះអ្វីៗទាំងអស់ដែលមាននៅលើអ៊ីនធឺណិតទាក់ទងនឹងបញ្ហានេះអ្នកគឺជាអ្នកដែលជិតបំផុតនឹងដំណោះស្រាយ។ គ្រាន់តែមានការសង្ស័យបន្តិចបន្តួចហេតុអ្វីខ្ញុំមិនអាចអនុវត្តបាន ??

    នៅពេលcomílarវាមិនសម្គាល់កំហុសទេប៉ុន្តែវាមិនបង្កើត ./ser4 ទេ

  3.   អាន់ឌ្រូឡូ dijo

    គំនិតណាមួយពីរបៀបធ្វើវានៅ Fedora?

  4.   អ្នកឈ្នះដឺឡា dijo

    ខ្ញុំមិនយល់ស្របនឹងការចែករំលែកព័ត៌មានទេប៉ុន្តែប្រសិនបើការរក្សាសិទ្ធិមិនត្រូវបានដាក់ចាប់តាំងពីឧទាហរណ៍នេះត្រូវបានបង្កើតឡើងដោយខ្ញុំតាំងពីឆ្នាំ ២០១១ ហើយនេះគឺជាអាស័យដ្ឋាននៃប្រភពដើម

    http://hugo4295.blogspot.mx/search?q=MYSQL

    1.    អេឡាវ dijo

      មិនមានបញ្ហាអ្វីទេ Victor ប៉ុន្តែប្រសិនបើអ្នកកត់សម្គាល់ខ្ញុំមិនបានយកអត្ថបទពីគេហទំព័ររបស់អ្នកទេប៉ុន្តែមកពីកន្លែងផ្សេងទៀតដែលជាអកុសលពួកគេមិនបានដាក់ប្រភព។ ទោះយ៉ាងណាឥឡូវខ្ញុំកែសម្រួលអត្ថបទ .. 😉

  5.   Alfonso Ovidio Lópezសីលធម៌ dijo

    ចែករំលែកចំណេះដឹងដ៏អស្ចារ្យសេរីភាពដ៏អស្ចារ្យ

  6.   ដានីឡាហ្វែរណានដេស dijo

    ហើយតើអាចបញ្ចូលសិលាចារឹកយ៉ាងដូចម្តេច ???