中企动力 > 商学院 > sql创建数据库个数
  • ?

    sql数据库数据文件怎么打开?

    莉莲

    展开

    方法/步骤

    1、找到要打开的数据库文件,如图

    2、如图所示,该数据库文件后缀名为.mdf,是SQL Server数据库的数据文件,这里将用SQL Server数据库对该文件进行打开。启动SQL Server数据库,如图

    3、图为启动SQL Server Management Studio时的界面,登录后可以管理数据库数据。开启之后的界面如图

    4、提示用户输入用户名和登录密码,输入正确后,点击登录,进入管理界面,如图

    5、进入管理界面后,右键选择数据库,再选择【附加】功能,如图

    6、点击【附加】后,出现窗口,如图

    7、在【附加数据库】窗口中,点击【添加】按钮,提示选择要附加的数据库,如图

    8、选种要添加的数据库,点击确定,在管理界面中会出现添加的数据库,如图

    9、打开数据库,就可以看到数据库中的表,表中的数据都可以看到。如图


    注意事项

    按以上步骤来,就可以打开数据库文件。

    不要直接点右键进行打开,可能会对文件告成损坏。

    (本文内容由百度知道网友凉城空也贡献)

  • ?

    程序员必知必会的SQL用法

    我来也

    展开

    导语本文讲解的知识点主要有:公用表表达式(CTE)、SQL NULL 函数及SQL 条件判断、窗口函数;针对人群:对SQL一知半解,停留在增删改查初级层面,大神可以飘过。

    一、公用表表达式(Common Table Expression,CTE)

    CTE 可以作为临时的结果集,可以在DML(Data Manipulation Language)语句中被多次引用,从而使语句更加简练。

    公用表达式定义 :WITH express_name [(colum_name[,....n])]AS(CTE_query_definition)

    (1)参数含义

    express_name:公用表表达式名字;colum_name :字段名;CTE_query_definition:一个Select语句。

    (2)CTE特点

    1)在一定程度上提高SQL语句的可读性;2)提高SQL语句执行性能;

    在多表进行 full join on (MySQL 目前不支持),每个部分都需要使用 一个select 查询结果集时,相应每个部分都需要去执行一遍,而使用WITH AS语句 ,则需执行一次 ;另外,SQL优化器也会对WITH AS短语做优化,连续被调用两次以上,优化器会自动将WITH AS短语的结果集存放在一个临时表中。

    3)可以在一个语句中多次引用公用表表达式;4)可以定义递归共用表表达式;

    实例讲解:获取某APP每一天不同平台dau数据

    这个好办,弄一个表变量不就可以了吗?

    一运行报错,查找一下PostgreSQL中并不支持declare 方式创建表变量,PostgreSQL只有通过函数返回record or ref Cursor。(MySQL支持)

    declare定义表变量

    CTE方式

    二、窗口函数

    在将窗口函数前,先来对比一下聚合函数(min() /max() /avg()/ sum()等)和窗口函数:

    (1)聚合函数返回的各个分组的结果,窗口函数则为每一行返回结果。

    窗口函数计算一些行集合的数据,与常规的聚集函数不同的是,窗口函数不会将参与计算的行合并成一行输出,而是保留它们原来的样子。

    (2)聚合函数都支持窗口函数运算。

    (3)聚合函数对一组值执行计算,并返回单个值。除了 COUNT 以外,聚合函数都会忽略空值。聚合函数经常与SELECT语句的GROUP BY子句一起使用。

    (4)窗口函数是对一组值进行操作,不需要使用GROUP BY子句对数据进行分组,能够在同一行中同时返回基础行和聚合列。

    实例讲解

    假设现在要得到某APP所有版本crash率的平均值,按照通常的做法,一定是通过聚合函数AVG来求crash率的平均值,输出结果中包含该APP对应的版本、crash率及平均crash率。

    (1)方法 1 (初学者经常犯的错误)

    出错原因 :Select 指定字段要么包含在聚合函数中,那么包含在Group By语句后面(Group by对Select指定字段做了限制)。

    (2)方法2

    使用方法1 碰壁后,立马改写成如下方式,一看查询结果立马尴尬了,都按 version 和crash_rate Group by了,还求啥avg?

    上述两种方法均未达到我们的目的,上一节介绍了公用表达式(CTE),那我们就先用这种方式来实现。

    (3)CTE方式实现

    那有没有更加简单的方式了 ?

    咱也不卖关子了 ,既然是讲窗口函数,那肯定可用窗口函数来实现了。

    (4)窗口函数实现

    窗口函数的作用是不是很强大,使用也相当简单 。

    窗口函数使用OVER函数实现,OVER函数分带参和不带参两种。

    OVER 函数定义:OVER([PARTITION BY value_expression,..[n] ],)

    其中可选参数PARTITION BY用于将数据按照特定字段分组 ; ORDER BY 用于排序。

    三、SQL NULL 函数

    不同的DB对应的SQL NULL函数均有所不同,目前SQL NULL函数主要有以下几种:

    (1)ISNULL() —— SQL Server/MS Access(2)NVL() —— Oracle(3)IFNULL() —— MySQL(4)COALESCE() —— MySQL / PostgreSQL

    用法很简单,以COALESCE()为例,COALESCE(data,defaultValue) ,如果data为NULL,那么COALESCE(data,defaultValue)将返回 defaultValue,反之,返回data。

    为什么数据库中很在意对NULL的处理,这牵扯到SQL的三值逻辑,True(真)、False(假)、UNKNOWN(不知道,不确定),在数据库中的NULL相当于UNKNOWN,若对NULL值处理不当会造成意想不到的后果。

    实例:新版app在原有上报基础上,新增了某些上报字段(没有设置默认值,深坑),后期需要对这个数据进行统计分析,如某版本得分=sum( 根据各项指标得分*权重)。

    结果发现 低版本的得分为NULL,原因很简单 某些字段只在高版本中才上报,而NULL+数字=NULL 。

    正确做法:(1)Create Table 时,设置字段默认值 ;(2)没有默认值,则可利用上述的SQL NULL 函数来实现。

    四、SQL条件判断(简要列举)

    (1) case when及if

    (2)insert into .... where not exists ()及insert overwrite

    某些数据库不支持replace,如PostgreSQL。

  • ?

    如何用T—SQL命令查询一个数据库中有哪些表

    弗雷德里卡

    展开

    可用如下方法:

    以sqlserver2008r2为例,可以从系统表中sys.objects来取字段。

    1、打开SQL Server Managment Studio,并登陆到指定数据库。

    2、新建一个查询窗口。

    3、使用如下语句:

    select name from sys.objects where type='U';

    查询结果:

    其中name列的内容就是当前登陆用户下的所有表名。

    (本文内容由百度知道网友badkano贡献)

  • ?

    关于SQL Server数据库基础知识整理

    坏情绪

    展开

    SQLServer数据库

    SQL Server是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。是美国Microsoft公司推出的一种关系型数据库系统。

    主要的特性

    (1)高性能设计,可充分利用WindowsNT的优势。

    (2)系统管理先进,支持Windows图形化管理工具,支持本地和远程的系统管理和配置。

    (3)强壮的事务处理功能,采用各种方法保证数据的完整性。

    (4)支持对称多处理器结构、存储过程、ODBC,并具有自主的SQL语言。 SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。

    SQL Server 数据库有三种类型的文件:

    主要数据文件

    主要数据文件是数据库的起点,指向数据库中文件的其它部分。每个数据库都有一个主要数据文件。主要数据文件的推荐文件扩展名是 .mdf。

    次要数据文件

    次要数据文件包含除主要数据文件外的所有数据文件。有些数据库可能没有次要数据文件,而有些数据库则有多个次要数据文件。次要数据文件的推荐文件扩展名是 .ndf。

    日志文件

    日志文件包含恢复数据库所需的所有日志信息。每个数据库必须至少有一个日志文件,但可以不止一个。日志文件的推荐文件扩展名是 .ldf。

    SQL Server数据库迁移

    方法一:脚本法

    如果你的数据库每天都有更新,而且今天改动量不大,可以将你所有的改动弄成脚本,放到本地数据库执行即可。就行一般公司开发写数据库发布脚本一样。

    方法二:备份与还原法

    在服务器的数据库中选中要转移的数据库,按鼠标右键,选所有任务->备份数据库;将备份copy到本地,选中本地已有的数据库(没有需要新建)右键→任务→还原数据库。

    找到你copy下来的.bak文件即可,值得提醒是,有时候会出现错误:2个数据库不是一个数据库。这种情况点 →选项 勾上 覆盖现有数据库即可。

    方法三:如果只是将服务器上的数据库copy到本地数据库,则右键→导出数据,按照向导导到对应的本地数据库(前提是本地数据库没有数据,如果有数据,他不会覆盖会出现2条相同的记录),而且完了之后还得到处所有的函数和存储过程,所以该方法不推荐。

    GDCA致力于网络信息安全,已通过WebTrust 的国际认证,是全球可信任的证书签发机构。GDCA专业技术团队将根据用户具体情况为其提供最优的解决方案。GDCA一直以“构建网络信任体系,服务现代数字生活”的宗旨,致力于提供全球化的数字证书认证服务。其自主品牌——信鉴易 TrustAUTH SSL证书:包括 OVSSL、EVSSL、代码签名证书等。为涉足互联网的企业打造更安全的生态环境,建立更具公信力的企业网站形象。

    本文转载:https://trustauth/wiki/13641.html

  • ?

    数据库的选择——SQL And NoSQL

    裘大娘

    展开

    序

    看来大家对语言还比较敏感,每个人接触的东西不同,其实没有最好,只是用到那个方面更合适,PHP是最好的语言显然是主观态度,当然小编也不是认为它不好,每个语言的诞生都有其特性,技术是死的人是活的。今天介绍一下数据库,老样子,小编也是入门程序员,说的难免会有偏差,不当之处还望指正。

    数据库

    SQL

    以MySQL、SQL Server、Oracle为首的关系型数据库霸占了数据库市场多年,小编作为.Net程序员自然是和SQL Server数据库接触不少,SQL Server相对于其他两个数据库并不是很出色。当然SQL Server也有它的优点,对Access、FoxPro、Excel等有良好的ODBC接口,可以把数据转存到SQL Server数据库当中。SQL Server虽然和Oracle同样收费,但由于语言的限制问题,.Net也只能连SQL Server。MySQL应该是开发者用得比较多的数据库,小编也只是了解淘宝的数据库时MySQL,不过淘宝的MySQL并不是现在我们使用的MySQL,淘宝的数据库是经过大佬重写的库,相当牛的。由于MySQL免费开源的原因,很多企业或者开发公司更愿意选择它来节省一定的成本。Oracle当属关系型数据库老大,使用的企业相对于MySQL并不多,主要原因可能还是因为Oracle收费吧,好像费用还不低。Oracle作为老大,它的速度、安全性都是关系型数据库中做的最好的,像银行、金融类的公司都会采用Oracle,Oracle的数据分析也很厉害,零售、物流行业对Oracle的需求也很大。

    SQL

    NoSQL

    被关系型数据库统治了这么多年的数据库行业也有很多问题,比如大数据处理、嵌套等问题都很不好解决,或者说想有更好的解决方案。NoSQL( Not Only SQL)的兴趣是为了解决关系型数据库的瓶颈问题,互联网飞速发展,访问量也是噌噌噌的上涨,访问量超过了了关系型数据库的承受范围,就需要对数据库做处理,虽说有其他处理办法,但都不能从根本上解决问题,NoSQL也就诞生了。NoSQL目前来说也有很多种,小编用过两个相对比较出众一点的NoSQL。Redis和Mongodb,Redis的优点是自带缓存,速度响应更快,个人比较喜欢里面的定时功能,做验证码和缓存ToKen非常舒服。Mongodb的优点是对大数据或者说文档的处理非常好,支持少量的查询,支持嵌套添加修改删除等优点。

    NoSQL

    选择

    很多人选择关系型数据库,这选择没问题,如果是小的网站访问量不大的情况下没任何问题。如果考虑后期访问量会大的时候还要考虑NoSQL,虽说NoSQL比较好用,优点也很多,NoSQL并不能取代关系型数据库的地位。对于用户的基本信息等重要信息还是需要存储到关系型数据库中,对于像文档只来的数据库最好是保存到NoSQL数据库当中,这样各司其职才能发挥最大优势。小编建议选择关系型数据库+Redis或者关系型数据库+Mongodb+Memcached(缓存),小编认为这搭配能合理地发挥各自的优势,同时有解决了大访问量的问题。如果数据量再大就需要做分布式,增加硬件等方式做处理了。

    Mongodb

    以上只是小编的个人观点,实际使用中使用任何数据库都可以承受小数据的访问,各位朋友有不同见解可评论交流。

  • ?

    oracle如何在一个数据库创建多个实例?

    甄凌柏

    展开

      实例:是一个非固定的、基于内存的基本进程与内存结构。当服务器关闭后,实例也就不存在了。

      数据库(Database)指的是固定的、基于磁盘的数据文件、控制文件、日志文件、参数文件和归档日志文件等。

      一般情况下,Oracle数据库都是一个数据库对应一个实例。如下图所示;

      

      当然可以根据需要创建多个数据库和对应的多个实例。

      测试环境如下:

      Windows 7 旗舰版,32位操作系统,已经安装Oracle 11g R2,并创建一个数据库和实例ORAC11

      Windows中安装的服务如下图所示。

      链接 ORAC11

      cmd

      SQLPLUS SYS/SYS@ORAC11  AS SYSDBA

      连接 ORAC111

      cmd

      SQLPLUS SYS/SYS1@ORAC111 AS SYSDBA

      一切 正常,完成。

    (本文内容由百度知道网友一骑当后贡献)

  • ?

    SQL Server 2008中怎么创建数据库

    楼从安

    展开

    1、选择开始菜单中→程序→【Management SQL Server 2008】→【SQL Server Management Studio】命令,打开【SQL Server Management Studio】窗口,并使用Windows或 SQL Server身份验证建立连接。

    2、在【对象资源管理器】窗口中展开服务器,然后选择【数据库】节点

    3、右键单击【数据库】节点,从弹出来的快捷菜单中选择【新建数据库】命令。

    4、执行上述操作后,会弹出【新建数据库】对话框。在对话框、左侧有3个选项,分别是【常规】、【选项】和【文件组】。完成这三个选项中的设置会后,就完成了数据库的创建工作,

    5、在【数据库名称】文本框中输入要新建数据库的名称。例如,这里以“新建的数据库”。

    6、在【所有者】文本框中输入新建数据库的所有者,如sa。根据数据库的使用情况,选择启用或者禁用【使用全文索引】复选框。

    7、在【数据库文件】列表中包括两行,一行是数据库文件,而另一行是日记文件。通过单击下面的【添加】、【删除】按钮添加或删除数据库文件。

    8、切换到【选项页】、在这里可以设置数据库的排序规则、恢复模式、兼容级别和其他属性。

    9、切换到【文件组】页,在这里可以添加或删除文件组。

    10、完成以上操作后,单击【确定】按钮关闭【新建数据库】对话框。至此“新建的数据”数据库创建成功。新建的数据库可以再【对象资源管理器】窗口看到。

    (本文内容由百度知道网友贡献)

  • ?

    数据库sql语句的基础使用,学习数据库的关键一步

    袁怜南

    展开

    创建数据库

    create database 数据库名;create database 数据库名 character set 字符集;

    查看某个数据库的定义的信息:

    show create database 数据库名;

    删除数据库

    drop database 数据库名称;

    切换数据库:

    use 数据库名;

    查看正在使用的数据库:

    select database();

    创建表

    create table 表名(字段名 类型(长度) 约束,字段名 类型(长度) 约束);

    查看数据库中的所有表:

    格式:show tables;

    查看表结构:

    格式:desc 表名;

    修改表结构格式:

    为分类表添加一个新的字段为 分类描述 varchar(20)ALTER TABLE sort ADD sdesc VARCHAR(20);

    alter table 表名 modify 列名 类型(长度) 约束;作用:修改表修改列的类型长度及约束.

    alter table 表名 change 旧列名 新列名 类型(长度) 约束;作用:修改表修改列名.

    alter table 表名 drop 列名;作用:修改表删除列.

    rename table 表名 to 新表名;作用:修改表名

    alter table 表名 character set 字符集;作用:修改表的字符集

    插入记录

    insert into 表 (列名1,列名2,列名3..) values (值1,值2,值3..); -- 向表中插入某些列insert into 表 values (值1,值2,值3..); --向表中插入所有列注意

    插入的数据应与字段的数据类型相同数据的大小应该在列的长度范围内在values中列出的数据位置必须与被加入列的排列位置相对应。除了数值类型外,其它的字段类型的值必须使用引号引起。如果要插入空值,可以不写字段,或者插入 null。对于自动增长的列在操作时,直接插入null值即可。

    更新

    update 表名 set 字段名=值,字段名=值;update 表名 set 字段名=值,字段名=值 where 条件;

    删除

    delete from 表名 [where 条件];一条一条的删除,不清空auto_increment记录数。

    truncate table 表名;整个表删除,重新建表,auto_increment将置为零,从新开始

    查询

    查询指定字段信息select 字段1,字段2,...from 表名;

    查询表中所有字段select * from 表名;

    distinct用于去除重复记录select distinct 字段 from 表名;

    别名查询,使用的as关键字,as可以省略的.别名可以给表中的字段,表设置别名。 当查询语句复杂时,使用别名可以极大的简便操作。表别名格式:select * from 表名 as 别名;select * from 表名 别名;列别名格式:select 字段名 as 别名 from 表名;select 字段名 别名 from 表名;

    我们在sql语句的操作中,可以直接对列进行运算。例如:将所有账务的金额+10000元进行显示.select pname,price+10000 from product;

    查询所有吃饭消费记录SELECT * FROM zhangwu WHERE name = '吃饭消费';查询出金额大于2000的信息SELECT * FROM zhangwu WHERE money >2000;查询出金额在2000-8000之间的账务信息SELECT * FROM zhangwu WHERE money >=2000 AND money <=8000;SELECT * FROM zhangwu WHERE money BETWEEN 2000 AND 5000;查询出金额是1000或5000或3500的商品信息SELECT * FROM zhangwu WHERE money =1000 OR money =5000 OR money =3500;SELECT * FROM zhangwu WHERE money IN(1000,5000,3500);查询包含”支出”的账务信息。SELECT * FROM zhangwu WHERE name LIKE "%支出%";查询是无五个字的信息SELECT * FROM gjp_ledger WHERE ldesc LIKE "_____"; -- 五个下划线_不为null信息SELECT * FROM zhangwu WHERE name IS NOT NULL;SELECT * FROM zhangwu WHERE NOT (name IS NULL);

  • ?

    SQL——Mysql数据库介绍

    裘迎梦

    展开

    声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

    MySQL:

    介绍:什么是数据库?就是一个软件,能帮我们把数据进行存储和提取,就好比java里存变量数组等东西的时候是存在内存中的,内存速度快,但是不能长时间存储,而硬盘的好处就是存储时间长,但是速度特别慢优势:能快速找到我们想要的数据,能进行存储的优化想要长时间保存数据只能是把数据存储到硬盘上,当我们下次启动的时候,在把数据读取上来

    数据库的主要目的就是:1.数据存储2.快速提取数据

    业界上的数据库有:MySQLOracleMS SQLserverSybaseDB2

    在中关村可以有数据库的软件买,可以看到它的价格

    学数据库主要学什么?学SQL语句,就是操作数据库的语句,学数据库就是学SQL语句,学会SQL语句,基本所有的数据库操作都是差不多的

    我们想要对数据曾、删、查、改的时候就要通过SQL语句看来执行,把SQL语句发送到数据库中就能帮你执行,执行完的结果就反馈到你的程序里

    DBMS 数据库管理系统RDBMS 关系型数据库管理系统现在的数据呈现方式是以表格的方式呈现的

    什么是关系型数据库,寄存东西的时候不用紧着一张表格来记,就好比两张表格有对应的关系,以表格的方式来呈现数据就称之为关系型数据库

    ORDBMS 对象关系型数据库管理系统就是说你下面的表格里面放的是数字文本和普通文本,就是说我可以在你的列里面放一个对象,对象之中还可以含有多个属性,表现的形式就是以表格的形式为基础列中有对象,这个对象不是指java的对象,而是说这个列里面放一些对象进去可以表现很多个属性出来如下图:就好比一个列有一个对象,对象中有三个属性

    DBA 数据库管理员

    SQL语句:数据库操作命令有:DCL - 数据库操作语句数据库系统参数设置启动关闭

    DML - 数据操作语句INSERT UPDATE DELETEDQL - 查询操作语句SELECT

    DDL - 数据结构操作语句 创建表创建视图创建索引

  • ?

    同和君带你玩转数据库!详解SQL Server基础操作……(附个人黑历史+大数据分析)

    游离者

    展开

    前几天同和君被某粉丝吐槽不务正业,那今天咱们就来务一下正业,来简单讲讲有关SQL Server的基础操作(其实是为了交差)。

    有关SQL(结构化查询语言)与其对应的各类数据库管理系统(SQL Server、Access等)的功能与运用范围,在这里就不做赘述了,有兴趣的可以去搜一下,然后你就会发现一个新的世界了~

    首先下载安装SQL Server并配置其实例,这方面也不详细说明了,有点电脑基础的都会~然后就是正式的实操环节,首先连接到服务器:

    进入后第一件事当然是创建属于自己的数据库啦~

    右键「数据库」,选择新建,然后跳出右边的对话框,根据实际需求来设置「文件初始大小」、「文件增长量」、「日志初始大小」、「日志增长量」。

    增长方式和文件大小上线可以自定义。

    确定后就能看的建立好的数据库了。

    试着生成一个有关数据库信息的脚本~

    详细sql文件信息如下:

    当然你也可以选择使用Transact-SQL语言直接来创建数据库:

    先点「新建查询」调出查询分析编译器:

    然后输入以下语句:

    createdatabase HKSDBonprimary(name=HKSDB_data,filename='d:\File\TEMP\HKSDB_data.mdf',size=20MB,maxsize=500MB,filegrowth=5MB)log on(name=HKSDB_log,filename='d:\File\TEMP\HKSDB_log.mdf',size=20MB,maxsize=100MB,filegrowth=1MB)

    右键相应的数据库属性会跳出很多选项:

    如果你把数据库的初始值设高了,可以通过收缩来减小:

    接着是通过代码来查看&修改数据库属性:

    --查看数据库属性sp_dboption HKSDB--查看数据库信息sp_helpdb HKSDB--修改日志文件的最大值和初始值/*将HKSDB_log日志文件的最大值改为200MB,初始值改为40MB*/use HKSDBgoalterdatabase HKSDB modifyfile(name=HKSDB_log,maxsize=200MB)alterdatabase HKSDB modifyfile(name=HKSDB_log,size=40MB)--更改数据库/*为数据库HKSDB添加一个辅助文件,文件名为HKSDBFZ,存储在D:\File\TEMP\HKSDBFZ.ndf中,初始大小为2MB,最大值为10MB,增长量为1MB。同时为数据库HKSDB添加一个日志文件,文件名为HKSDBLOG1,存储在D:\File\TEMP\HKSDBLOG1.ldf中,初始大小为1MB,最大值为5MB,增长量为1MB。*/use HKSDBalterdatabase HKSDBaddfile(name=HKSDBFZ,filename='D:\File\TEMP\HKSDBFZ.ndf',size=2mb,maxsize=10mb,filegrowth=1mb)alterdatabase HKSDBadd log file(name=HKSDBLOG1,filename='D:\File\TEMP\HKSDBLOG1.ldf',size=2mb,maxsize=10mb,filegrowth=1mb)/*删除数据库HKSDB中的辅助文件HKSDBFZ和日志文件HKSDBLOG1。*/use HKSDBalterdatabase HKSDBremove file SYDBFZalterdatabase HKSDBremove file HKSDBLOG1如果你对某个数据库不爽,想把它打入冷宫,可以直接右键数据库删除,也可以手动输入代码:

    use HKSDBdropdatabase HKSDB似乎碰上了钉子户:

    试试大神的代码:

    USE MASTER GO DECLARE@dbname SYSNAME SET@dbname='同和君的的数据库'--这个是要删除的数据库库名 DECLARE@s NVARCHAR(1000)DECLARE tb CURSORLOCALFORSELECT s ='kill '+ CAST(spid ASVARCHAR)FROM MASTER..sysprocesses WHERE dbid = DB_ID(@dbname)OPEN tb FETCHNEXTFROM tb INTO@sWHILE @@fetch_status=0BEGINEXEC(@s)FETCHNEXTFROM tb INTO@sENDCLOSE tb DEALLOCATE tb EXEC('drop database ['+@dbname+']')

    完美~

    好的,那么到这里大家已经大致了解了数据库的定义与管理,接下来带大家起飞了~

    手动一个个创建数据表是一件很苦逼的事情,再加上我们还没学到JAVA和SQL Server链接的JDBC技术,所以同和君选择一种取巧的方式:从Excel表格直接导入数据~

    选好数据源类型:

    选好目标文件后下一步:

    然后对目标表的各项数据分别选好类型(其中大多都系统默认好了,局部地区稍微修改下就好,比如学号之类的):

    我们来预览一下~

    成功~

    然后我们可以开始骚操作了~

    不过在此之前,还是先教大家如何备份&还原吧~

    接下来是还原,这回我们导入一个不同的~

    这个是我用来做多表连接的~详细的后边会讲到~

    首先我们来查一下同和君初恋女孩高一的成绩:

    然后保存该sql文件:

    然后再查一下初中好基友的总分区排名:

    再保存下:

    然后查一下b站up主@SmartMogician 的黑历史

    哟,竟然出现同校同学同名同姓的情况了!

    这样的话就能成功筛选了:

    没想到当年的语文竟然这么难!

    当年的学霸……

    这样看可能更直观:

    (emmmm……这真的不是招生办的阴谋……)

    这样看上去就舒心多了~

    很多朋友应该都存在偏科的现象,但在我们的深入研究下,发现事情并不简单:

    语文不好的同学不一定数学好,

    但数学不好的同学就有可能语文好了……

    三倍的人数差还是能说明问题的……

    那么以上呢,就给大家详细展示了大多常用查询指令的用法~接下来给大家介绍的是「连接查询」,通过这个就能实现多表之间的查询了。

    成绩与排名两个表连接,分析理科总成绩与数学成绩之间的关系:

    看样子综合能力好的同学,真的是每一门都不偏科呢!

    最后同和君要做一件集大成的骚操作~

    首先合并一下数据:

    嘿嘿嘿~

    我们来看看初中的那些朋友们到了高中后学习状态如何~

    唯一能对应上的只有姓名了,结果如下:

    换个表试试:

    大数据显示,初中成绩好的高中成绩不一定好,但高中成绩好的初中成绩一定不差!

    什么?有人想看我的成绩?

    抱歉,这两个表里都没有我的名字hhh,成绩好就是可以为所欲srgsrgz

    [数据删除]

    大家也看到了,现在在某二本混日子的我……(;д;)

    所以学习这玩意嘛……哎,不谈了不谈了……

    接下来介绍一些增删查改的相关操作:

    --增加一条记录insert N校联考 (考号,姓名,班级,学校)values('10001','同和君','一班','社会大学')--求表中各校总分的平均分,并存入一个新的数据库createtable AvgMarks(学校 nvarchar(255),平均分 real)insertinto AvgMarks(学校,平均分)select 学校,AVG([9科总分分数])from N校联考groupby 学校--将「N校联考」中所有「广州市第五中学」的信息更新为「广州五中」update N校联考set 学校='广州五中'where 学校='广州市第五中学'执行结果:

    ok,那么就暂且先告一段落吧,基本操作讲完了,下回咱们就讲讲高级操作吧~

    鸣谢以上十七所高校提供的成绩信息~

sql创建数据库个数

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP