當前位置:首頁 » 編程軟體 » mysql資料庫編程

mysql資料庫編程

發布時間: 2022-05-26 13:26:49

A. mysql資料庫

1.功能強大 MySQL 中提供了多種資料庫存儲引擎,各引擎各有所長,適用於不同的應用場合,...
2.支持跨平台 MySQL 支持至少 20 種以上的開發平台,包括 Linux、W...
3.運行速度快 高速是 MySQL 的顯著特性。在 MySQL 中,使用了極快的 B ...
4.支持面向對象 PHP 支持混合編程方式。編程方式可分為純粹面向對象、純粹面向過程..

B. 編程向MySql資料庫中插入一條記錄,並通過表單顯示結果

前端需要兩個頁面,一個是錄入,另一個是查詢,後端提供兩個介面,前後端交互可以用servlet和action表單提交和ajax請求,後端可以簡單的通過JDBC連接資料庫進行數據持久化操作和select,也可以使用資料庫連接池,使用現成的框架實現。

C. 如何用C語言連接MYSQL資料庫

1、配置ODBC數據源。
2、使用SQL函數進行連接。
對於1、配置數據源,配置完以後就可以編程操作資料庫了。
對於2、使用SQL函數進行連接,參考代碼如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include<windows.h>
#include<sql.h>
#include<sqlext.h>
void
main()
{
HENV
henv;
//環境句柄
HDBC
hdbc;
//數據源句柄
HSTMT
hstmt;
//執行語句句柄
unsigned
char
datasource[]="數據源名稱";
//即源中設置的源名稱
unsigned
char
user[]=
"用戶名";
//資料庫的帳戶名
unsigned
char
pwd[]=
"密碼";
//資料庫的密碼
unsigned
char
search[]="select
xm
from
stu
where
xh=0";
SQLRETURN
retcode;
//記錄各SQL函數的返回情況
//
分配環境句柄
retcode=
SQLAllocEnv(&henv);
//
等介於
SQLAllocHandle(SQL_HANDLE_ENV,
SQL_NULL
,
&henv);
//
設置ODBC環境版本號為3.0
retcode=
SQLSetEnvAttr(henv,
SQL_ATTR_ODBC_VERSION,
(void*)SQL_OV_ODBC3,
0);
//
分配連接句柄
retcode=
SQLAllocConnect(henv,&hdbc);
//
等介於
SQLAllocHandle(SQL_HANDLE_DBC,
henv,
&hdbc);
//設置連接屬性,登錄超時為*rgbValue秒(可以沒有)
//
SQLSetConnectAttr(hdbc,
SQL_LOGIN_TIMEOUT,
(SQLPOINTER)(rgbValue),
0);
//直接連接數據源
//
如果是windows身份驗證,第二、三參數可以是

D. 使用mingw編程,如何操作mysql 資料庫,最好有常式。

  1. 下載一個mingw的utils包,用0.3版本,0.41版本有問題。

  2. 拷貝mysql/lib/opt下的libmysql.lib文件到mingw的home/$user目錄下,拷貝mysql/lib/opt/libmysql.dll文件到mingw的bin目錄下.

  3. 把utils的包解壓,把bin目錄下的文件拷貝到mingw的bin目錄下.

  4. 進行mingw的環境,執行

    reimp -d libmysql.lib

    dlltool -k -d libmysql.def -l libmysql.a

  5. 把生成的libmysql.a拷貝到mingw的lib下

  6. 把mysql/include下的全部文件拷貝到mingw/include下(省事)

  7. 在mysql中創建資料庫test,創建表mt(id int , content varchar(20));

  8. 寫c代碼,m.cc

#include <iostream>

#include <windows.h>

#include <cstdlib>

#include <cstdio>

#include <mysql.h>


using namespace std;

MYSQL *conn;

int main() {

MYSQL_RES * res_set;

MYSQL_ROW row;

unsigned int i, ret;

MYSQL_FIELD * field;

unsigned int num_fields;

conn = mysql_init(NULL);

if(conn != NULL)

cout << "mysql_init success!" << endl;

else {

printf("failed ! ");

return 0;

}

ret = mysql_options(conn, MYSQL_SET_CHARSET_NAME, "gbk");//最好與資料庫charset一致

if(ret == 0)

cout << "mysql_options success!" << endl;

else printf("failed ! ");


if(mysql_real_connect(conn, "localhost", "root","root", "test", 0, NULL, 0) != NULL)

cout << "mysql_real_connect success!" << endl;

else printf("failed ! ");


mysql_query(conn, "INSERT INTO mt VALUES (1,'ABCDEF'),(2,'漢字支持');");

printf("insert affect %d sentences ", mysql_affected_rows(conn));


if(mysql_query(conn,"SELECT * FROM mt"))

cout << "mysql query failed! ";

res_set = mysql_store_result(conn);

if (res_set == NULL)

cout << "res_set is null" << endl;

num_fields = mysql_num_fields(res_set);


for(i = 0; i < num_fields; i++)

{

field = mysql_fetch_field_direct(res_set, i);

printf("%s ", field->name);

}


cout << endl;


while ((row = mysql_fetch_row(res_set)) != NULL)

{

for (i = 0; i < mysql_num_fields(res_set); i ++)

{

printf("%s ",row[i] != NULL ? row[i] : "NULL");

}

printf(" ");

}

mysql_close(conn);

return 0;


}


編譯:g++ -lmysql -o m m.cc

E. 關於資料庫(MYSQL)時間段的拆分問題,怎麼樣編程實現

可以看下時間函數
對日期時間進行加減法運算
(ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同義詞,也可以用運算符 和-而不是函數
date是一個DATETIME或DATE值,expr對date進行加減法的一個表達式字元串type指明表達式expr應該如何被解釋
[type值 含義 期望的expr格式]:
SECOND 秒 SECONDS
MINUTE 分鍾 MINUTES
HOUR 時間 HOURS
DAY 天 DAYS
MONTH 月 MONTHS
YEAR 年 YEARS
MINUTE_SECOND 分鍾和秒 "MINUTES:SECONDS"
HOUR_MINUTE 小時和分鍾 "HOURS:MINUTES"
DAY_HOUR 天和小時 "DAYS HOURS"
YEAR_MONTH 年和月 "YEARS-MONTHS"
HOUR_SECOND 小時, 分鍾, "HOURS:MINUTES:SECONDS"
DAY_MINUTE 天, 小時, 分鍾 "DAYS HOURS:MINUTES"
DAY_SECOND 天, 小時, 分鍾, 秒 "DAYS HOURS:MINUTES:SECONDS"
expr中允許任何標點做分隔符,如果所有是DATE值時結果是一個DATE值,否則結果是一個DATETIME值)
如果type關鍵詞不完整,則MySQL從右端取值,DAY_SECOND因為缺少小時分鍾等於MINUTE_SECOND)
如果增加MONTH、YEAR_MONTH或YEAR,天數大於結果月份的最大天數則使用最大天數)
mysql> SELECT "1997-12-31 23:59:59" INTERVAL 1 SECOND;
-> 1998-01-01 00:00:00
mysql> SELECT INTERVAL 1 DAY "1997-12-31";
-> 1998-01-01
mysql> SELECT "1998-01-01" - INTERVAL 1 SECOND;
-> 1997-12-31 23:59:59
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1 SECOND);
-> 1998-01-01 00:00:00
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL 1 DAY);
-> 1998-01-01 23:59:59
mysql> SELECT DATE_ADD("1997-12-31 23:59:59",INTERVAL "1:1" MINUTE_SECOND);
-> 1998-01-01 00:01:00
mysql> SELECT DATE_SUB("1998-01-01 00:00:00",INTERVAL "1 1:1:1" DAY_SECOND);
-> 1997-12-30 22:58:59
mysql> SELECT DATE_ADD("1998-01-01 00:00:00", INTERVAL "-1 10" DAY_HOUR);
-> 1997-12-30 14:00:00
mysql> SELECT DATE_SUB("1998-01-02", INTERVAL 31 DAY);
-> 1997-12-02
mysql> SELECT EXTRACT(YEAR FROM "1999-07-02");
-> 1999
mysql> SELECT EXTRACT(YEAR_MONTH FROM "1999-07-02 01:02:03");
-> 199907
mysql> SELECT EXTRACT(DAY_MINUTE FROM "1999-07-02 01:02:03");
-> 20102
TO_DAYS(date)
返回日期date是西元0年至今多少天(不計算1582年以前)
mysql> select TO_DAYS(950501);
-> 728779
mysql> select TO_DAYS('1997-10-07');
-> 729669
FROM_DAYS(N)
給出西元0年至今多少天返回DATE值(不計算1582年以前)
mysql> select FROM_DAYS(729669);
-> '1997-10-07'
本文來自CSDN博客,轉載請標明出處:http://www.cnblogs.com/zeroone/archive/2010/05/05/1727659.html

F. 二級MySQL資料庫程序設計的考試內容

一、基本概念與方法 1.資料庫的基本概念和特點 2.資料庫系統的結構 3.數據模型 4.資料庫設計方法 二、MySQL平台下的SQL交互操作 1.資料庫、表、索引和視圖的相關概念 2.資料庫、表、索引和視圖的創建及維護方法 3.數據完整性約束的概念、定義及使用方法 4.表和視圖的查詢及數據更新操作 三、MySQL的資料庫編程 1.觸發器、事件、存儲過程和存儲函數的概念及作用 2.觸發器的創建及使用 3.事件的創建及使用 4.存儲過程和存儲函數的創建及使用 四、MySQL的管理與維護 1.MySQL的安裝與配置 2.MySQL用戶賬號管理的作用及方法 3.MySQL賬戶許可權管理的作用及方法 4.MySQL資料庫備份與恢復的概念及方法 5.二進制日誌文件的使用 五、MySQL的應用編程 1.PHP語言的基本使用方法 2.MySQL平台下編制PHP簡單應用程序

G. MYSQL資料庫語句編寫

UPDATE
表名 SET 欄位名=『內容』
[WHERE 『條件』]
注意:[
]中的內容可有可無。
舉例:表名=ZHXX(賬戶信息)
,需要修改其中的DLMM(登陸密碼),條件是DLMC(登陸名稱)=soso.
UPDATE
ZHXX SET DLMM='123' WHERE DLMC='soso'

H. 用C語言如何對MySQL資料庫進行操作

里的大部分代碼參考了MySQL發行包裡面的.c源文件,大家也可以去裡面找找相關的代碼,下面這段代碼實現了連接到本地MySQL伺服器上9tmd_bbs_utf8資料庫,從數據表tbb_user中根據輸入的userid取得該用戶的用戶名並列印輸出到終端。
if defined(_WIN32) || defined(_WIN64)為了支持windows平台上的編譯
#include <windows.h> #endif #include <stdio.h> #include <stdlib.h> #include "mysql.h"

我的機器上該文件在/usr/local/include/mysql下
定義MySQL資料庫操作的宏,也可以不定義留著後面直接寫進代碼
define SELECT_QUERY "select username from tbb_user where userid = %d" int main(int argc, char **argv)char **argv 相當於 char *argv[] {

MYSQL mysql,*sock;定義資料庫連接的句柄,它被用於幾乎所有的MySQL函數
MYSQL_RES *res;查詢結果集,結構類型
MYSQL_FIELD *fd ;包含欄位信息的結構
MYSQL_ROW row ;存放一行查詢結果的字元串數組
char qbuf[160];存放查詢sql語句字元串
if (argc != 2) { //檢查輸入參數 fprintf(stderr,"usage : mysql_select <userid>\n\n"); exit(1); } mysql_init(&mysql); if (!(sock = mysql_real_connect(&mysql,"localhost","dbuser","dbpwd","9tmd_bbs_utf8",0,NULL,0))) { fprintf(stderr,"Couldn't connect to engine!\n%s\n\n",mysql_error(&mysql)); perror(""); exit(1); } sprintf(qbuf,SELECT_QUERY,atoi(argv[1])); if(mysql_query(sock,qbuf)) { fprintf(stderr,"Query failed (%s)\n",mysql_error(sock)); exit(1); } if (!(res=mysql_store_result(sock))) { fprintf(stderr,"Couldn't get result from %s\n", mysql_error(sock)); exit(1); } printf("number of fields returned: %d\n",mysql_num_fields(res)); while (row = mysql_fetch_row(res)) { printf("Ther userid #%d 's username is: %s\n", atoi(argv[1]),(((row[0]==NULL)&&(!strlen(row[0]))) ? "NULL" : row[0])) ; puts( "query ok !\n" ) ; } mysql_free_result(res); mysql_close(sock); exit(0); return 0;

為了兼容大部分的編譯器加入此行
}
編譯的時候,使用下面的命令
gcc -o mysql_select ./mysql_select.c -I/usr/local/include/mysql -L/usr/local/lib/mysql -lmysqlclient (-lz) (-lm) 後面兩個選項可選,根據您的環境情況運行的時候,執行下面的命令
./mysql_select 1
將返回如下結果:
number of fields returned: 1 Ther userid #1 's username is: Michael query ok !

上面的代碼我想大部分都能看明白,不明白的可以參考一下MySQL提供的有關C語言API部分文檔,各個函數都有詳細說明,有時間我整理一份常用的API說明出來。

I. MySQl資料庫程序設計是幹嘛用的好學嘛

資料庫其實不難,就是學起來很枯燥,說白了資料庫就是一種特殊的文件管理系統,學資料庫就是學「增、刪、改、查」的語句,就是這么簡單。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:705
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:968
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:676
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:828
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:737
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1076
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:308
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:188
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:875
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:829