Программирование >>  Создание клиентов mysql 

1 ... 119 120 121 [ 122 ] 123 124 125 ... 201


** Вставляемые данные. */

const char *names [ ] = {

Leon , Vicky , Carl , Ricky , Nicki , Jeff , Bo , Tina , Joey

uint num rows = sizeof(names)/sizeof(char *);

const char *querY create =

CREATE TABLE testapi (\

ID INT(11) NOT NULL AUTO INCREMENT, \

Name VARCHAR(64), \

PRIMARY KEY(ID)) ;

const char *query insert =

INSERT INTO testapi (Name) VALUES ( %s) ;

const char *querY delete =

DELETE FROM testapi WHERE ID < 4 ;

const char *query update =

UPDATE testapi SET Name = None WHERE 10=5 ;

const char *query drop = DROP TABLE testapi ;

** Инициализация соединения. V

if(!mysql init(Smysql)) {

fprintf(stderr, Unable to initialize MYSQL struct!\n ); exit 0 ;

** Подключение к базе данных. */

if(!mysql real connect(Smysql, localhost , NULL, NULL,

test , 0, NULL, 0))

fprintf(stderr, %d: %s\n , mysql errno(smysql), mysql error(smysql));

exit 0 ;

if(mysql query(Smysql, query create))

Запрос завершился неудачей!

* * Запросы.

** Создание таблиц!.







Изменение данных 39J>

fprintf(stderr, Could not create table!\n%d: %s\n ,

mysql errno(Smysql), mysql error(Smysql)); mysql close(Smysql); exitO;

** Вставка записей. */

for(i=0; i<num rows; {

sprintf(query, querY insert, names[i]);

if (mysql query(smysql, query))

** Запрос завершился неудачей! */

fprintf(stderr, Could not insert row!\n%5\n%d: %s\n ,

query, mysql errno(Smysql), mysql error(Smysql) mysql close(Smysql); exit 0 ;

printf ( %d row insertXn , my5ql affected rows (Smysql) ) ;

if (mysql query(Smysql, query delete)) {

** Запрос завершился неудачей! */

fprintf(stderr, Could not delete rows!\n%d: %s\n ,

mysql ermo (Smysql) , mysql error (Smysql) ) ; mysql close(smysql); exit();

printf( %d rows deleted\n , mysql affeeted rows(smysql));

Обновление записей.

if (mysql query(Smysql, query update)) {

fprintf(stderr, Could not update rows!\n%d: %s\n ,

mysql errno(smysql) , mysql error(Smysql)); mysql close(smysql); exit();

** Удаление записей.

Запрос завершился





printf( %d rows updatedXn , mysql affected rows(smysql)); /*

* * Удаление таблицы. */

if(mysql query(smysql, query drop)) {

** Запрос завершился неудачей! */

fprintf(stderr, Could not drop table!\n%d: %s\n , mysql errno(smysql), mysql error(smysql))/ mysql close(smysql); exit();

* * Закрытие соединения. */

mysql close(smysql);

Программа, представленная в листинга .3, создает таблицу и добавляет в нее записи. Далее происходит удаление части записей, обновление записи и, наконец, удаление всей таблицы. Обратите внимание на способ вставки записей. В циклог благодаря функции ntf() происходит повторное использование одной и той же инструкции INSERT, в которую подставляются разные параметры. Эта простая методика не так эффективна, как подготовка одной инструкции INSERT, вставляющей группу записей. Но представьте себе программу, принимающую произвольные поль-, зовательские запросы на добавление, обновление и удаление записей. Тогда такая методика окажется весьма удобной.



1 ... 119 120 121 [ 122 ] 123 124 125 ... 201

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика