本文目录一览:
mysql怎么创建数据库表
01
MySql创建数据库指定字符集
创建数据库指定字符集:
UTF8
CREATE DATABASE xiaoyao_db DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
GBK
CREATE DATABASE xiaoyao_db DEFAULT CHARACTER SET gbk COLLATE gbk_general_ci
02
MySql创建表并设定为主键自动增值
CREATE TABLE person
(
personID int NOT NULL AUTO_INCREMENT,
PRIMARY KEY(personID),
FirstName varchar(15),
LastName varchar(15),
Age int
)
//创建admin表
CREATE TABLE `admin`
(
`id` INT(11) NOT NULL AUTO_INCREMENT,
`username` CHAR(20) NOT NULL,
`password` CHAR(32) NOT NULL,
`email` CHAR(32) NOT NULL,
PRIMARY KEY(`id`)
)ENGINE=INNODB AUTO_INCREMENT=1;
03
MySql在PHP语句中insert into
INSERT INTO table_name (column1,column2,column3,...) VALUES (values1,values2,values3....);
04
Mysql在PHP语句中update语法
UPDATE table_name SET column_name = new_value WHERE column_name = some_value
05
Mysql在PHP语句中Delete from语法
DELETE FROM table_name WHERE column_name = some_values;
06
注意两点:
1、MySql在PHP语句中insert into常错点
mysql_query(“insert into admin(username,password,age) values(‘vaule’,’vaule’,’vaule’)”);
上面语句执行之前,应该先执行mysql_query(“set names utf8”);以防止数据插入数据之后出现乱码!
2、MySql在PHP语句中update常错点
update数据之前进行mysql_query(“set names utf8”)语句执行,这样才会成功更新数据
怎么在mysql中创建数据库表
MySQL数据库系统可以支持许多不同的数据库,通常,每个应用程序需要一个数据库。
在Book-O-Rama例子中,数据库名为books。
创建数据库是最容易的部分。在mySQL命令提示符下,输入如下所示命令:
MySQLcreate datebase dbname;
应该用所希望的数据库名称来代替"dbname"字符串。
在Book-O-Rama例子中,要创建一个名为books的数据库。
就这样应该会看到如下所示的响应(执行时间会因为机器不同而不同):
Query ok,1 row affected(0.0 sec)
如果出现上诉字段意味着一切正常。
如果没有得到响应,请确认在上面的命令行后面输入分号,分号将告诉mySQL已经完成了命令输入,该执行命令了。
mysql数据库中哪些表有数据
数据库中有几十上百张表,那么哪些表的数据量比较大呢,总不能一个表一个表的去查询吧,在mysql中也有类似于oracle的数据字典表,只不过mysql没有oracle记录的那么多和详细,但也足够我们查询这些信息了。
在mysql的information_schema下有存储数据库基本信息的数据字典表,可以通过查询tables表来获得所需要的表相关信息。
mysql show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
|mysql |
|report |
| report_result |
|test |
+--------------------+
5 rows in set (0.02 sec)
mysql use information_schema;
Database changed
mysql show tables;
+---------------------------------------+
|Tables_in_information_schema |
+---------------------------------------+
|CHARACTER_SETS |
|COLLATIONS |
| COLLATION_CHARACTER_SET_APPLICABILITY |
|COLUMNS |
|COLUMN_PRIVILEGES |
|KEY_COLUMN_USAGE |
|PROFILING |
|ROUTINES |
|SCHEMATA |
|SCHEMA_PRIVILEGES |
|STATISTICS |
|TABLES |
|TABLE_CONSTRAINTS |
|TABLE_PRIVILEGES |
|TRIGGERS |
|USER_PRIVILEGES |
|VIEWS |
+---------------------------------------+
17 rows in set (0.00 sec)
那么我们查看一下talbes表结构信息,看看存储的具体信息
mysql desc tables;
+-----------------+--------------+------+-----+---------+-------+
| Field |Type | Null | Key | Default |Extra |
+-----------------+--------------+------+-----+---------+-------+
| TABLE_CATALOG | varchar(512) | YES | | NULL | |
| TABLE_SCHEMA | varchar(64) | NO | | | |
| TABLE_NAME | varchar(64) | NO | | | |
| TABLE_TYPE | varchar(64) | NO | | | |
| ENGINE |varchar(64) | YES | |NULL | |
| VERSION |bigint(21) | YES | |NULL | |
| ROW_FORMAT | varchar(10) | YES | | NULL | |
| TABLE_ROWS | bigint(21) | YES | | NULL | |
| AVG_ROW_LENGTH | bigint(21) | YES | | NULL | |
| DATA_LENGTH | bigint(21) | YES | | NULL | |
| MAX_DATA_LENGTH | bigint(21) | YES | | NULL | |
| INDEX_LENGTH | bigint(21) | YES | | NULL | |
| DATA_FREE | bigint(21) |YES | | NULL | |
| AUTO_INCREMENT | bigint(21) | YES | | NULL | |
| CREATE_TIME | datetime |YES | | NULL | |
| UPDATE_TIME | datetime |YES | | NULL | |
| CHECK_TIME | datetime |YES | | NULL | |
| TABLE_COLLATION | varchar(64) | YES | |NULL | |
| CHECKSUM | bigint(21) |YES | | NULL | |
| CREATE_OPTIONS | varchar(255) | YES | |NULL | |
| TABLE_COMMENT | varchar(80) | NO | | | |
+-----------------+--------------+------+-----+---------+-------+
21 rows in set (0.00 sec)
主要存储了表的信息如表使用的引擎,表的类型等信息。我们可以通过查询table_rows属性获得哪些表数据量比较大。
mysql select table_name,table_rows from tables order by table_rows desc limi 10;
+---------------+------------+
| table_name |table_rows |
+---------------+------------+
| task6 | 1558845 |
| task | 1554399 |
| task5 | 1539009 |
| task3 | 1532169 |
| task1 | 1531143 |
| task2 | 1531143 |
| task4 | 1521225 |
| task7 | 980865 |
我们继续深入思考,这些存储的数据是否准确,是否真实的反应了表中数据量大小?
mysql show create table tables \G;
*************************** 1. row***************************
Table: TABLES
Create Table: CREATE TEMPORARY TABLE`TABLES` (
`TABLE_CATALOG` varchar(512) default NULL,
`TABLE_SCHEMA` varchar(64) NOT NULL default '',
`TABLE_NAME` varchar(64) NOT NULL default '',
`TABLE_TYPE` varchar(64) NOT NULL default '',
nb