Приступите МиСКЛ-у користећи Ц.

Овим туторијалом представљам заједници како приступити МиСКЛ бази података из програмског језика Ц и без употребе превише зависности, са само

libmysqlclient

Надам се да ће бити од користи онима којима је оваква документација била потребна и на тај начин наставити да доприноси СЛ заједници и помаже онима који немају ИНТЕРНЕТ.

конфигурација

Прво морамо проверити да ли имамо инсталиране библиотеке дизајна *-dev да бисте могли да приступите МиСКЛ-у са Ц/Ц++.

мискл_цонфиг --либс

Нешто попут овога би требало да се појави:

-Вл, -Бсимболиц-фунцтионс –Л/уср/либ/мискл -лмисклцлиент рдинамиц

Ако показује да библиотека није инсталирана, инсталирамо је следећом командом:

судо апт-гет инсталл либмисклцлиент-дев мискл_цонфиг --цфлагс -И/уср/инцлуде/мискл -ДБИГ_ЈОИНС=1 -фно-стрицт-алиасинг -ДУНИВ_ЛИНУКС -ДУНИВ_ЛИНУКС

Сада када смо верификовали и инсталирали шта нам је потребно за везу између МиСКЛ-а и Ц-а, настављамо са креирањем базе података:

ЦРЕАТЕ ДАТАБАСЕ тест; УСЕ тест; ЦРЕАТЕ ТАБЛЕ дата (ид инт АУТО_ИНЦРЕМЕНТ НОТ НУЛЛ ПРИМАРИ КЕИ, име варцхар(40), аге инт); УМЕТНИ У ВРЕДНОСТИ података (НУЛЛ, 'Алма Хернандез', 28), (НУЛЛ, 'Хозе Санчез', 39), (НУЛЛ, 'Мартин лоера', 25), (НУЛЛ, 'Леонардо Кортез', 26), (НУЛЛ , 'Густаво Ромеро', 25);

Програмирање и компилација

Настављамо да креирамо код:

Куери.ц

/* библиотеке које ћемо користити */ #инцлуде /* библиотека која нам омогућава да користимо везе и упите са МиСКЛ-ом */ #инцлуде /* Да бисте могли да користите принтф, итд. */ инт маин() { МИСКЛ *цонн; /* променљива везе за МиСКЛ */ МИСКЛ_РЕС *рес; /* променљива која ће садржати резултат упита */ МИСКЛ_РОВ ред; /* променљива која ће садржати поља за сваки консултовани запис */ цхар *сервер = "лоцалхост"; /*адреса сервера 127.0.0.1, лоцалхост или ИП адреса */ цхар *усер = "роот"; /*корисник за упит базе података */ цхар *пассворд = "роот"; /* лозинка за дотичног корисника */ цхар *датабасе = "тест"; /*име базе података за упит */ цонн = мискл_инит(НУЛЛ); /*иницијализирати везу на нулл */ ​​/* повезивање са базом података */ иф (!мискл_реал_цоннецт(цонн, сервер, корисник, лозинка, база података, 0, НУЛЛ, 0)) { /* дефинише параметре везе пре успостављања */ фпринтф(стдерр, "%с\н", мискл_еррор(цонн)); /* ако постоји грешка дефинишемо шта је грешка */ екит(1); } /* пошаљи СКЛ упит */ иф (мискл_куери(цонн, "одабери * из података")) { /* дефиниција упита и порекла везе */ фпринтф(стдерр, "%с\н", мискл_еррор( цонн)); излаз(1); } рес = мискл_усе_ресулт(цонн);
	принтф(„ИД\тИме\т\старост\н“); док ((ред = мискл_фетцх_ров(рес)) != НУЛЛ) /* петља кроз променљиву рес са свим записима добијеним за употребу */
		принтф("%с\т%с\т%с \н", ред[0],ред[1],ред[2]); /* променљива реда се конвертује у низ према броју поља у табели */ /* променљива рес се ослобађа и веза се затвара */ мискл_фрее_ресулт(рес); мискл_цлосе(цонн); }

Компајлирамо са:

гцц -о Куери $(мискл_цонфиг --цфлагс) Куери.ц $(мискл_цонфиг --либс)

Верификација

Извршавамо:

./Цонсултатион

izvor: Блог Хуго4295


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.

  1.   Коратсуки дијо

    Добар, сачуван у мом арсеналу конзолних скрипти и туторијала! +1 за вашег партнера…

  2.   Родриго дијо

    Здраво, честитам све што постоји на вебу у вези са овом темом, ваше је било најближе решењу. Само мало питање, зашто не могу да добијем извршни фајл?

    Када дође време за компајлирање, не приказује грешке, али не генерише ./сер4

  3.   Андрело дијо

    Имате ли идеју како то учинити у Федори?

  4.   Виктор де ла о дијо

    Не слажем се са дељењем информација, али се не слажем са непостављањем ауторских права пошто сам овај пример направио ја од 2011, а ево адресе оригиналног извора

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

    1.    елав дијо

      Нема проблема Викторе, али ако приметиш, нисам узео чланак са твог сајта, већ са другог где нажалост нису ставили извор. Међутим, тренутно уређујем чланак.. 😉

  5.   Алфонсо Овидио Лопез Моралес дијо

    одлично дељење знања велика слобода

  6.   ДАНИЕЛА ФЕРНАНДЕЗ дијо

    А како можете да правите уметке???