Anyè Atik
baz done MySQLKi jan yo kreye yon tab done?MisklKreye done tab kòmand/deklarasyon/sentaks nan
MySQL kreye tab done
Kreye yon tab done MySQL mande pou enfòmasyon sa yo:
- Non tab la
- non jaden tab la
- defini chak jaden tab la
gramè
Sa ki anba la a se sentaks jeneral SQL pou kreye tab done MySQL:
CREATE TABLE table_name (column_name column_type);
Nan egzanp sa a nou pral kreye tab done chenweiliang_tbl nan baz done chenweiliang:
CREATE TABLE IF NOT EXISTS `chenweiliang_tbl`( `chenweiliang_id` INT UNSIGNED AUTO_INCREMENT, `chenweiliang_title` VARCHAR(100) NOT NULL, `chenweiliang_author` VARCHAR(40) NOT NULL, `submission_date` DATE, PRIMARY KEY ( `chenweiliang_id` ) )ENGINE=InnoDB DEFAULT CHARSET=utf8;
Egzanp analiz:
- Si ou pa vle jaden an dwe nil Pwopriyete yo nan jaden yo ka mete kòm PA NIL, lè opere baz done a, si done yo antre nan jaden sa a senil , yo pral rapòte yon erè.
- AUTO_INCREMENT defini kòm yon atribi oto-enkreman, jeneralman yo itilize pou kle prensipal yo, epi valè a pral otomatikman ogmante pa 1.
- Mo kle PRIMARY KEY la itilize pou defini yon kolòn kòm kle prensipal la.Ou ka itilize plizyè kolòn pou defini kle prensipal la, separe pa vigil.
- ENGINE mete motè depo a, ak CHARSET mete kodaj la.
Kreye tab nan èd memwa lòd
Tablo done MySQL yo ka fasilman kreye atravè fenèt kòmand mysql>.Ou ka itilize deklarasyon SQL KREYE TAB pou kreye tab done yo.
Enstans
Sa ki anba la a se yon egzanp pou kreye yon tab done chenweiliang_tbl:
root@host# mysql -u root -p Enter password:******* mysql> use chenweiliang; Database changed mysql> CREATE TABLE chenweiliang_tbl( -> chenweiliang_id INT NOT NULL AUTO_INCREMENT, -> chenweiliang_title VARCHAR(100) NOT NULL, -> chenweiliang_author VARCHAR(40) NOT NULL, -> submission_date DATE, -> PRIMARY KEY ( chenweiliang_id ) -> )ENGINE=InnoDB DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.16 sec) mysql>
Remak:Terminator kòmand MySQL la se yon pwen (;).
Kreye tab done lè l sèvi avèk PHP script
Ou ka itilize PHP a mysqli_query() fonksyon pou kreye yon tablo done ki sòti nan yon baz done ki egziste deja.
Fonksyon an gen de paramèt epi li retounen VRE si ekzekisyon an reyisi, otreman li retounen FALSE.
gramè
mysqli_query(connection,query,resultmode);
| 参数 | 描述 |
|---|---|
| koneksyon | Obligatwa.Espesifye koneksyon MySQL pou itilize. |
| query | Obligatwa, espesifye fisèl rechèch la. |
| rezilta mòd | Si ou vle.yon konstan.Ka nenpòt nan valè sa yo:
|
Enstans
Egzanp sa a sèvi ak yon script PHP pou kreye yon tab done:
Kreye tab done
<?
php
$dbhost = 'localhost:3306'; // mysql服务器主机地址
$dbuser = 'root'; // mysql用户名
$dbpass = '123456'; // mysql用户名密码
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('连接失败: ' . mysqli_error($conn));
}
echo '连接成功<br />';
$sql = "CREATE TABLE chenweiliang_tbl( ".
"chenweiliang_id INT NOT NULL AUTO_INCREMENT, ".
"chenweiliang_title VARCHAR(100) NOT NULL, ".
"chenweiliang_author VARCHAR(40) NOT NULL, ".
"submission_date DATE, ".
"PRIMARY KEY ( chenweiliang_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; ";
mysqli_select_db( $conn, 'chenweiliang' );
$retval = mysqli_query( $conn, $sql );
if(! $retval )
{
die('数据表创建失败: ' . mysqli_error($conn));
}
echo "数据表创建成功\n";
mysqli_close($conn);
?>Apre ekzekisyon siksè, ou ka wè estrikti tab la atravè liy lòd la.
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) pataje "Ki jan yo kreye yon tab done nan baz done MySQL? Kreye Kòmandman Tablo Done / Deklarasyon / Sentaks nan MySQL" pou ede w.
Byenvini pataje lyen atik sa a:https://www.chenweiliang.com/cwl-457.html
