Database之SQLSever:SQL命令实现查询之多表查询、嵌套查询、分页复杂查询,删除表内重复记录数据、外连接等案例之详细攻略 目录SQL命令实现查询之多表查询、嵌套查询、分页复杂查询 1、多表查询 2、嵌套...
Database之SQLSever:SQL命令实现查询之多表查询、嵌套查询、分页复杂查询,删除表内重复记录数据、外连接等案例之详细攻略
目录
sql删除表结构In a real-time situation, there are scenarios when we would like to remove the table from the database. Let us discuss in detail about the process of removing a table from the database. ...
sql删除表结构
In a real-time situation, there are scenarios when we would like to remove the table from the database. Let us discuss in detail about the process of removing a table from the database.
在实时情况下,有些情况下我们想从数据库中删除表。 让我们详细讨论从数据库中删除表的过程。

SQL删除表(SQL DROP TABLE)

The SQL DROP TABLE statement informs the database that a particular table needs to be removed. SQL DROP TABLE command removes all the data, indexes, triggers, constraints and permission specifications for that table.
SQL DROP TABLE语句通知数据库需要删除特定的表。 SQL DROP TABLE命令删除该表的所有数据,索引,触发器,约束和权限规范。
We will use the following three databases for better understanding DROP Table.
我们将使用以下三个数据库来更好地理解DROP表。
MySQL MySQLPostgreSQL PostgreSQLSQL Server SQL服务器

MySQL删除表(MySQL Drop Table)

Syntax
句法
DROP TABLE table_name;
In the syntax above, table_name is the table that needs to be dropped.
在上面的语法中,table_name是需要删除的表。
Let us try to understand the SQL DROP TABLE using an example.
让我们尝试使用一个示例来理解SQL DROP TABLE。
Create a table Customer using the following SQL COMMAND.
使用以下SQL命令创建表Customer。
CREATE TABLE `test`.`customer` ( `CustomrId` INT NOT NULL, `CustomerName` VARCHAR(45) NULL, `ProductId` VARCHAR(45) NOT NULL, `State` VARCHAR(45) NULL, PRIMARY KEY (`CustomrId`, `ProductId`), UNIQUE INDEX `CustomrId_UNIQUE` (`CustomrId` ASC) VISIBLE);
Check if the table exists using the SQL SELECT statement as shown in the below image.
如下图所示,使用SQL SELECT语句检查表是否存在。
Check If Table Exists Using SQL SELECT
使用SQL SELECT检查表是否存在
Now we will remove the table using SQL DROP TABLE command.
现在,我们将使用SQL DROP TABLE命令删除该表。
Query
询问
DROP TABLE customer;
SQL DROP Table On MySQL
MySQL上SQL DROP表
Executing the above query will remove the customer table along with all the constraints, data, index, etc.
执行以上查询将删除客户表以及所有约束,数据,索引等。

PostgreSQL删除表(PostgreSQL Drop Table)

Create a Customer table using below query.
使用下面的查询创建一个Customer表。
CREATE TABLE "test.customer" ( "CustomerId" integer NOT NULL, "CustomerName" character varying(45), "ProductId" character varying(45), "Country" character varying(45), PRIMARY KEY ("CustomerId","ProductId") );
SQL Create Table On PostgreSQL
PostgreSQL上SQL创建表
Using SQL Select check if the table exists, as shown below.
使用SQL选择检查表是否存在,如下所示。
PostgreSQL SELECT Table
PostgreSQL SELECT表
Now we will drop the table using below query.
现在,我们将使用以下查询删除表。
DROP table public."Customer";
PostgreSQL DROP Table
PostgreSQL DROP表

SQL Server删除表(SQL Server Drop Table)

Create a Customer table using below query.
使用下面的查询创建一个Customer表。
CREATE TABLE customer ( CustomrId INT NOT NULL, CustomerName VARCHAR(45) NULL, ProductId VARCHAR(45) NOT NULL, State VARCHAR(45) NULL, PRIMARY KEY (CustomrId, ProductId));
SQLServer Create Table
SQLServer创建表
Use SQL select to validate if the table exists.
使用SQL select验证表是否存在。
SQLServer SELECT Table
SQLServer SELECT表
Now we will drop the table using below query.
现在,我们将使用以下查询删除表。
DROP TABLE dbo.customer;
SQL Server DROP Table
SQL Server DROP表

摘要(Summary)

SQL Drop Table command will delete the table and all the data associated with it. So it’s advisable to have a backup first before you actually drop the table.
SQL Drop Table命令将删除该表以及与其关联的所有数据。 因此,建议您在实际删除表之前先进行备份。
However, if there are foreign key constraints on the table with another table then the error will be thrown. You will first have to explicitly remove the foreign-key constraints and then drop the table.
但是,如果在具有另一个表的表上存在外键约束,则将引发错误。 您首先必须明确删除外键约束,然后删除表。
表的管理表的基本操作 创建表(别忘了选择库,指定字符集(默认和库一样)) create table [if not exists] 表名( 字段名1 数据类型, 字段名2 数据类型, 字段名3 数据类型, …. 字段名n 数据类型 )...
表的管理

表的基本操作

创建表(别忘了选择库,指定字符集(默认和库一样))
create table [if not exists] 表名(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型,
字段名n 数据类型
)[character set utf8];
[可选项]查看创建表的语句(字符集,存储引擎)
show create table 表名;查看表结构(多少字段,各字段的详细属性信息等)
desc 表名;删除表
drop table 表名1, 表名2,…;

表的复制

复制选择的内容 语法:
create table 表名 select …from 表名 where 条件;仅仅复制表结构:
create table 表名 select … from 表名 where false;
# 相当于只复制抬头 采用 desc 查看是否成功

表字段的操作

语法: alter table 表名 ….;添加字段(add):
alter table 表名 add 字段名 数据类型;
(默认添加在最后字段)
alter table 表名 add 字段名 数据类型 first;
(添加在第一字段)
alter table 表名 add 字段名 数据类型 after 字段名2;
(添加在字段名2的后边)删除字段(drop):
alter table 表名 drop 字段名;修改字段数据类型(modify):
alter table 表名 modify 字段名 新数据类型;
修改会受到原有数据限制,如果原有数据不能满足新的数据类型,修改不会成功,会报错,超出范围
out of range修改表的名字(rename):
alter table 表名 rename 新表名;修改字段名(change):
alter table 表名 change 原字段名 新字段名 新数据类型;

表记录的操作 增删改查

插入(insert)
insert into 表名 values(值1), (值2),(.)..
值1 是 一整条记录,多个字段值,按顺序,按个数写好insert into 表名 (字段名1, 字段名2,…) values(值1),(值2)…; 剩余字段自动插入默认值查询(select)
select * from 表名 [where 条件];
查询记录(满足条件的)所有记录select 字段1,字段2… from 表名 [where 条件];
查询(满足条件的)字段记录删除表记录(delete)
delete from 表名 where 条件;
注意: 删除条件, 一定要加删除条件,否则会全部删除更新表记录(update)
update 表名 set 字段名=值1, 字段2=值2 where 条件;
注意: 条件, 一定要加条件,否则会全部更改

数据导入(导入表记录)

作用: 将文件系统中的内容导入到数据库中语法格式:
load data infile “路径+文件名”
into table 表名
fields terminated by “分隔符” # 每一个单元格与字段用分隔符分隔
lines terminated by “\n”; # 遇到换行符开始下一条记录
示例:将×××.csv导入到数据库中
先在数据库中创建对应的表
create table score(
字段名 数据类型,
)character set utf8;执行数据导入查看 将文件放入mysql用户的 搜索路径中
show variables like “secure_file_priv”;
# /var/lib/mysql-files/将文件拷贝到搜索路径中(采用tab判断路径正确性)
sudo cp ~/×××.csv /var/lib/mysql-files/
sudo ls /var/lib/mysql-files/ 查看一下有没有复制成功执行数据导入语句
load data infile “/var/lib/mysql-files/×××.csv”
into table score
fields terminated by “,”
lines terminated by “\n”;

数据导出(导出表记录)

把数据库表的记录导出到系统文件里导出语法:
select …from 表名 where 条件
into outfile “路径+文件名”
fields terminated by ‘分隔符’
lines terminated by ‘\n’;步骤:
查看搜索路径:
show variables like “%secure%”
# /var/lib/mysql-files/执行数据导出语句:
select 字段1, 字段2, 字段3 from 库名.库内的表名
into outfile “/var/lib/mysql-files/×××.csv”
fields terminated by ‘,’
lines terminated by ‘\n’;
# 空值 变为 \N
# 空字符串 变为 空

查看及更改文件的权限

ls -l 文件名 # 查看文件详细信息,可以查看文件权限
- rw- r– r– 1 root root 142 8月31 16:28 ×××.csv
符号:权限:计数
r: 可读 4
w: 可写 2
x: 可执行 1
例:chmod 555 文件名 更改此文件均为读和执行权限
三组权限分别所属
u: 用户/所有者
g: 所属组,同组其他用户
o: 其他组其他人
a: 所有人
添加权限: +r +w +x +rw …
删除权限: -r -w -x -rw …
chmod u +w ×××.txt 给文件的所有者 添加写权限
SQL数据库常用命令-创建,删除表-添加,修改,删除字段http://blog.csdn.net/cncco/archive/2009/08/08/4424555.aspx创建表CREATE TABLE dbo.CategoriesNew(CategoryID intIDETITY (1,1) NOT NULL, CategoryName ...
SQL数据库常用命令-创建,删除表-添加,修改,删除字段
'创建表
CREATE TABLE dbo.CategoriesNew
(CategoryID intIDETITY (1,1) NOT NULL,
CategoryName nvarchar(15) NOT NULL,
Description ntext NULL,
Picture image NULL)
'删除表
DROP TABLE table_name[,...n]
'增加字段
addsqlstr = "alter table docdsp add dspcode char(200)"
'删除字段
delsqlstr = "ALTER TABLE table_NAME DROP COLUMN column_NAME"
'修改字段类型
editsqlstr = "ALTER TABLE table_name ALTER COLUMN column_name new_data_type"
详细说明:
3.2 创建表
在定义了表的所有数据类型之后,就可以创建表、添加和删除列、以及生成列值了。
3.2.3 创建和删除表
1、创建表的基本要求
创建表时必须指定表名、列名以及数据类型。