SQL> SPOOL c:\temp\startsql --------保存在c:\temp文件夹下
SQL>@ c:\temp\startsql ---------执行
SQL>exit -------------修改
SQL>select 名字,工资 from 工资表 where 工资 between 1500 and 2850
SQL>SPOOL c:\temp\startsql ---------------保存
SQL>@ c:\temp\startsql -------------执行
SQL>SPOOL OFF -------------------关闭通常情况下Mysql和SQL
Server数据库使用的都是SQL文件。
如果您需要打开SQL文件,您可以通过双击让电脑自动用默认程序打开,如果无法打开您就打开一个记事本,然后将SQL文件拖入记事本中就可以打开了。不过这样打开基本上是没什么意义的,虽然也能看到一些数据,但中文网站用的SQL文件打开后可能会出现大量乱码的情况。而且通常作为网站Mysql数据库备份的SQL文件其体积可能比较大,几MB到上百MB都有可能。这时使用记事本打开SQL文件可能会出现卡死现象,这时可以采用UE等专业文本编辑器打开。
特别提醒:SQL文件很有可能是重要的网站数据库文件,不建议大家使用记事本或其他不知来历的查看工具对SQL文件进行编辑。以免导致网站重要数据的丢失或数据库文件出错。create database Db
on
primary ------------------------这里加primary
(name=DB_data1,
filename="d:\ceshi\DB_data1mdf",
size=5Mb,
filegrowth=10%,
maxsize=100Mb )
,---------------------------------这里加斗号
(name=DB_data2,
filename="d:\ceshi\DB_data2ndf",
size=5Mb,
filegrowth=10%,
maxsize=100Mb
)
log on
(name=DB_log,
filename="d:\ceshi\Dbldf",
size=3Mb,
filegrowth=10%,
maxsize=unlimited
)Mysql常用命令详解
Mysql安装目录
数据库目录
/var/lib/mysql/
配置文件
/usr/share/mysql(mysqlserver命令及配置文件)
相关命令
/usr/bin(mysqladmin mysqldump等命令)
启动脚本
/etc/initd/mysql(启动脚本文件mysql的目录)
系统管理
连接MySQL
格式:
mysql -h 主机地址 -u用户名 -p用户密码
例 1:连接到本机上的 MySQL。
hadoop@ubuntu:~$ mysql
-uroot -pmysql;
例 2:连接到远程主机上的 MYSQL。
hadoop@ubuntu:~$ mysql -h
127001 -uroot -pmysql;
修改新密码
在终端输入:mysql -u用户名 -p密码,回车进入Mysql。
>
use mysql;
> update user set password=PASSWORD('新密码') where
user='用户名';
> flush privileges; #更新权限
> quit; #退出
增加新用户
格式:grant select on 数据库 to
用户名@登录主机 identified by '密码'
举例:
例 1:增加一个用户 test1 密码为
abc,让他可以在任何主机上登录,并对所有数据库有
查询、插入、修改、删除的权限。首先用以 root 用户连入
MySQL,然后键入以下命令:
mysql>grant select,insert,update,delete on to
root@localhost identified by 'mysql';
或者
grant all privileges on to
root@localhost identified by 'mysql';
然后刷新权限设置。
flush privileges;
例
2:如果你不想 root 有密码 *** 作数据库“mydb”里的数据表,可以再打一个命令将密码消掉。
grant
select,insert,update,delete on mydb to root@localhost identified by
'';
删除用户
hadoop@ubuntu:~$ mysql
-u用户名 -p密码
mysql>delete from user where user='用户名' and
host='localhost';
mysql>flush privileges;
//删除用户的数据库
mysql>drop
database dbname;
数据库 *** 作
显示所有的数据库
mysql> show databases;(注意:最后有个
s)
创建数据库
mysql> create database
test;
连接数据库
mysql> use
test;
查看当前使用的数据库
mysql> select
database();
当前数据库包含的表信息
mysql>
show tables; (注意:最后有个 s)
删除数据库
mysql> drop database
test;
表 *** 作
备注: *** 作之前使用“use
<数据库名>”应连接某个数据库。
建表
命令:create
table <表名> (<字段名 1> <类型 1> [,<字段名 n> <类型
n>]);
例子:
mysql> create table MyClass(
> id int(4) not null
primary key auto_increment,
> name char(20) not null,
> sex int(4)
not null default '0',
> degree double(16,2));
获取表结构
命令: desc 表名,或者show columns from
表名
例子:
mysql> describe MyClass
mysql> desc MyClass;
mysql>
show columns from MyClass;
删除表
命令:drop table <表名>
例如:删除表名为
MyClass 的表
mysql> drop table MyClass;
插入数据
命令:insert into <表名> [( <字段名
1>[,<字段名 n > ])] values ( 值 1 )[, ( 值 n )]
例子:
mysql> insert
into MyClass values(1,'Tom',9645),(2,'Joan',8299), (2,'Wang',
9659);
查询表中的数据
查询所有行
mysql>
select from MyClass;
查询前几行数据
例如:查看表 MyClass 中前 2 行数据
mysql>
select from MyClass order by id limit 0,2;
或者
mysql> select from
MyClass limit 0,2;
删除表中数据
命令:delete from 表名 where 表达式
例如:删除表
MyClass 中编号为 1 的记录
mysql> delete from MyClass where id=1;
修改表中数据
命令:update 表名 set 字段=新值, where
条件
mysql> update MyClass set name='Mary' where id=1;
在表中增加字段
命令:alter table 表名 add 字段 类型
其他;
例如:在表 MyClass 中添加了一个字段 passtest,类型为 int(4),默认值为 0
mysql> alter
table MyClass add passtest int(4) default '0'
更改表名
命令:rename table 原表名 to 新表名;
例如:在表
MyClass 名字更改为 YouClass
mysql> rename table MyClass to
YouClass;
更新字段内容
命令:update 表名 set
字段名 = 新内容
update 表名 set 字段名 = replace(字段名, '旧内容', '新内容');
例如:文章前面加入 4
个空格
update article set content=concat(' ', content);
数据库导入导出
从数据库导出数据库文件
使用“mysqldump”命令
首先进入 DOS
界面,然后进行下面 *** 作。
1)导出所有数据库
格式:mysqldump -u [数据库用户名] -p
-A>[备份文件的保存路径]
2)导出数据和数据结构
格式:mysqldump -u [数据库用户名] -p
[要备份的数据库名称]>[备份文件的保存路径]
举例:
例 1:将数据库 mydb 导出到 e:\MySQL\mydbsql
文件中。
打开开始->运行->输入“cmd”,进入命令行模式。
c:\> mysqldump -h localhost -u
root -p mydb >e:\MySQL\mydbsql
然后输入密码,等待一会导出就成功了,可以到目标文件中检查是否成功。
例
2:将数据库 mydb 中的 mytable 导出到 e:\MySQL\mytablesql 文件中。
c:\> mysqldump -h
localhost -u root -p mydb mytable>e:\MySQL\mytablesql
例 3:将数据库 mydb
的结构导出到 e:\MySQL\mydb_strusql 文件中。
c:\> mysqldump -h localhost -u root -p
mydb --add-drop-table >e:\MySQL\mydb_strusql
备注:-h localhost
可以省略,其一般在虚拟主机上用。
3)只导出数据不导出数据结构
格式:
mysqldump -u [数据库用户名] -p -t
[要备份的数据库名称]>[备份文件的保存路径]
4)导出数据库中的Events
格式:mysqldump -u [数据库用户名] -p
-E [数据库用户名]>[备份文件的保存路径]
5)导出数据库中的存储过程和函数
格式:mysqldump -u [数据库用户名]
-p -R [数据库用户名]>[备份文件的保存路径]
从外部文件导入数据库中
1)使用“source”命令
首先进入“mysql”命令控制台,然后创建数据库,然后使用该数据库。最后执行下面 *** 作。
mysql>source
[备份文件的保存路径]
2)使用“<”符号
首先进入“mysql”命令控制台,然后创建数据库,然后退出 MySQL,进入 DOS
界面。最后执行下面 *** 作。
mysql -u root –p < [备份文件的保存路径]我相信大家在使用SQLServer2005时一定碰到过修改完数据库文件名后,物理文件名没有修改成功,还是原来的文件名,无论是给别人数据库还是自己看着感觉一定都很不爽,下面我就此问题的处理方法给大家列出一个解决法,希望能对您能有所帮助 *** 作步骤:1将现有的数据库名称修改成您所要的2备份您的数据库到一个固定的位置3右击您要 *** 作的数据库,选择Tasks->Restore->Database,打开"RestoreDatabase"窗口4选择左边的"Options",打开数据库选项5在"Restore修改数据库的文件名和逻辑名1、修改数据库的逻辑名,可以在sqlserver的客户端 *** 作:右击数据库,选择重命名,就可以修改逻辑名或者通过下面的SQL语句来修改alterdatabaseWeb2ASPNET2DBmodifyname=ERayMailTest2、修改数据库的文件名的步骤1)分离数据库2)将分离的数据库的文件名,改成新的文件名,如原来的文件名是:test1mdf,test1_logldf就改成新的文件名test2mdf和test2_logldf3)附加到数据库中,在附加的过程中,注意修改下数据库详细信息的当前的路径,也要检查下MDF的路径是否正确,在上面都正确的前提下,一般是能附加成功的用过MSSQL的用户可能都知道,当把原来的数据库为ABAK还原为B数据库时,名称虽然是变了,可逻辑文件名依然是A,多少让我看到不爽,网上大佬们也说了很多用语句的,可我试了不行,只是:execsp_renamedb'旧库名','新库名'数据库名称可以改,物理文件名(逻辑名)不可以改。可我用了最各简单的方法:属性——文件——逻辑名一切OKSQLServer更改数据库名称、更改逻辑文件名Postedon2008-05-1013:40Smthhy阅读(2074)评论(0)编辑收藏所属分类:Sql今天在备份一数据库还原给另一数据库时,发现还原不了,看了下原数据库的逻辑文件名和物理文件名不一致,现以下方法可更改文件名的一致。在SQLServer的企业管理器中,似乎不能直接更改数据库名称,如果要更改,最方便的是在查询分析器中运行:alterdatabase原数据库名称modifyname=新数据库名称SQLServer中,数据库还原时可以更改物理文件名,也可以分离数据库,直接更改mdf的文件名再附加,但更改逻辑文件名似乎不那么直观。在查询分析器里运行:alterdatabase数据库名称modifyfile(name=原逻辑文件名,newname=新逻辑文件名)这样就可以更改逻辑文件名了,由于SQLServer有数据文件和日志文件,所以数据文件和日志文件的逻辑文件名都要更改的话,就得写两个类似于上述的语句。如果数据库中已经存在test表则,将其drop掉,
if exists (select from dboSysobjects where id='test' and OBJECTPROPERTY(OBJECT_ID('test'),'IsTable')=1 )
drop table test
--新建数据库
create table test
(
id int
)
declare @i int,@num int --定义变量用来存储循环初始值和结束值
select @i=1,@num=1000
while (@i<=@num) ---进入循环
begin
insert into test values(@i)
select @i+=1
end
select from test
drop table test --删除实体表,如果程序真用则就不要删除了!1、首先启动xshell的程序编写器。
2、其次将所执行的sql文件进行程序代码的输入。
3、然后在程序翻译中,进行程序的检验是否可行。
4、最后在程序的导出中,在设置选项选择log命令,点击确定即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)