|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
修复过程包含最多4个阶段,在下面描述。在你开始前,你应该cd到数据库目录和检查表文件的权限,确保他们可被运行mysqld的Unix用户读取(和你,因为你需要存取你正在检查的文件)。如果它拒绝你修改文件,他们也必须是可被你写入的。(1)数据界说言语(DDL)
数据界说言语用来界说数据库的各级形式。经常使用关头字有:Create(创建数据表)、Alter(变动数据表)、Drop(删除数据表)。
创建数据表
CREATETABLEtable_name(
column1DATATYPE[NOTNULL][NOTNULLPRIMARYKEY],
column2DATATYPE[NOTNULL],
...
)
申明:下面的DATATYPE指的是字段的范例,NUTNULL指是不是为空,PRIMARYKEY指本表的主键。
创建索引
CREATEINDEXindex_nameONtable_name(column_name)
申明:为数据表格的某个字段创建索引以增添查询时的速率。
变动数据表
ALTERTABLEtable_nameADDCOLUMNcolumn_nameDATATYPE
申明:增添一个字段。
ALTERTABLEtable_nameADDPRIMARYKEY(column_name)
申明:将某个字段设为主键。
ALTERTABLEtable_nameDROPPRIMARYKEY(column_name)
申明:将某个字段的主键界说作废。
删除数据表
DROPtable_name
DROPindex_name
(2)数据操纵言语(DML)
数据操纵言语(DML)用于操纵数据表,如增添、删除、查询、修正等。经常使用关头字有:Insert(拔出数据)、Delete(删除数据)、Select(查询数据)和Updata(修正数据)。
拔出数据
INSERTINTOtable_name(column1,column2,...)VALUES(value1,value2,...)
申明:在拔出语句中,若不指明要拔出字段则,按表中的字段按次顺次拔出。别的,拔出数据的范例应和所拔出字段的范例相婚配。
INSERTINTOtable_name(column1,column2,...)SELECTcolumnx,columny,...
FROManother_table
申明:经由过程一个子查询将其余表格响应字段的值拔出该表格。
删除数据
DELETEFROMtable_nameWHEREconditions
申明:删除切合前提的纪录。
查询数据
SELECTcolumn1,columns2,...FROMtable_name
申明:把table_name的响应字段查询出来。
SELECT*FROMtable_nameWHEREcolumn1=xANDcolumn2>y
申明:这是一个带有前提的查询语句,*暗示查询一切的字段,WHERE以后是前提表达式。
SELECTcolumn1,column2FROMtable_nameORDERBYcolumn2[DESC]
申明:ORDERBY是指定以某个字段排序,[DESC]是指从年夜到小分列,若没有指明,则是从小到年夜分列。
SELECT*FROMtable1,table2WHEREtable1.colum1=table2.column1
申明:这是一个组合查询,查询两个表格中column1字段具有不异值的纪录。作为两个表中创建干系的字段,其范例必需婚配。
SELECTCOUNT(*)FROMtable_nameWHEREcolumn_name=x
申明:查询切合前提的纪录数。
SELECTSUM(column1)FROMtable_name
申明:盘算column1字段的数据总和。除SUM以外,还能够用AVG()盘算均匀值、用MAX()盘算最年夜值、用MIN()盘算最小值。
SELECT*FROMtable_name1WHEREEXISTS(SELECT*FROMtable_name2WHERE
conditions)
申明:这条查询语句用一个子查询语句作为该查询语句的前提。EXISTS指是不是存在。
SELECT*FROMtable_name1WHEREcolumn1IN(SELECTcolumn1FROM
table_name2WHEREconditions)
申明:IN前面接的是一个汇合,暗示将column1字段的值在汇合中的一切纪录从table_name1表当选出来。
SELECT*FROMtable_name1WHEREcolumn1LIKEx%
申明:该语句为含混查询。这里的“%”是一个通配符,暗示将column1字段中以x开首的一切纪录选出来。
SELECT*FROMtable_name1WHEREcolumn1BETWEENxANDy
申明:BETWEEN暗示column1的值介于x和y之间。
变动材料
UPDATEtable_nameSETcolumn1=xWHEREconditions
申明:该语句暗示在某种前提下将column1字段的值改成x。若不加前提,则默许该字段全体变动。
以上是最基础的SQL语法常识,若想更深条理的懂得,请参阅数据库方面的书本。
MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者AmbroseTwebaze提供。 |
|