可以在SQL
Server
Management
Studio里新建一个数据库关系图,将要查看的表添加到关系图里,主外键关系就能很清晰的显示出来了。数据库关系图在每个数据库的“数据库关系图”节点创建。
1、首先在电脑中打开Microsoft SQL Server,查询所有数据库。
2、查询当前数据库中所有表名。说明:xtype='U':表示所有用户表,xtype='S':表示所有系统表。
3、查询指定表中的所有字段名。
4、然后查询指定表中,所有字段名和字段类型。
5、接着获取主键字段,获取数据库所有类型,就完成了。
首先要检查你的表与表之间是不是有约束(主外键约束),如果存在,才可以像 上面这位朋友的方式进行连接,一般连接有左连接、右连接、内连接,下面给你举例:
----做笛卡尔积
select sid,sname,scid,scsname,scscore from infom s ,score sc
------内连接 写法一
select sid,sname,scid,scsname,scscore
from infom s ,score sc inner join score sc
on sid= scid ------内连接的条件
------on sid <>scid --------是全集 - 交集
------where scscore>80
------内连接 方法二
select sid,sname,scid,scsname,scscore
from infom s ,score sc
where sid= scid
------
-------------------------------------------------------外连接 左连接
--------------左表数据完全显示,右表中相同的数据显示,不同数据null
select Studentname,scorescore
from Student left join score -----------------先写的为左表
on Studentid=score id -----------------连接条件
-------------------------------------------------------外连接 右连接
--------------右表数据完全显示,左表中相同的数据显示,不同数据显示null
select Studentname,scorescore
from Student right join score
on Studentid=score id
-------------------------------------------------------全连接 full join
-------------------------------------------------------左、右表的数据完全显示,相同的数据显示一次
select Studentname,scorescore
from Student full join score
on Studentid=score id
-------------------------------------------------------交叉联接
------------------------------------------交叉联接得到的是两表联接所有的数据组合
------------------------------------------(A表的数据记录 B 表的数据记录)
-------------------------------------------方式一
select Student,score from Student,score
-------------------------------------------方式二
select score ,Student from Student
cross join score
-----------------------------------------------------多表联接
--------------------------------------要求查出张三 C#的考试成绩,涉及student,score,subject三个表
---------方式一:
select studentname,subjectsname ,score score
from Student
inner join score
on studentid= scoreid
inner join subject
on scoreid=subjectid
where Studentname='张三' and subjectsname='C#'
---------方式二:等值联接
select studentname,subjectsname ,score score
from Student,score ,subject
where StudentDBid=scoreid and score id=subjectid
and Studentname='张三' and subjectsname='C#'
--读取库中的所有表名select name from sysobjects where xtype='u'--读取指定表的所有列名select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')获取数据库表名和字段sqlserver中各个系统表的作用sysaltfiles 主数据库 保存数据库的文件syscharsets 主数据库 字符集与排序顺序sysconfigures 主数据库 配置选项syscurconfigs 主数据库 当前配置选项sysdatabases 主数据库 服务器中的数据库syslanguages 主数据库 语言syslogins 主数据库 登陆帐号信息sysoledbusers 主数据库 链接服务器登陆信息sysprocesses 主数据库 进程sysremotelogins主数据库 远程登录帐号syscolumns 每个数据库 列sysconstrains 每个数据库 限制sysfilegroups 每个数据库 文件组sysfiles 每个数据库 文件sysforeignkeys 每个数据库 外部关键字sysindexs 每个数据库 索引sysmenbers 每个数据库 角色成员sysobjects 每个数据库 所有数据库对象syspermissions 每个数据库 权限systypes 每个数据库 用户定义数据类型select 列名=name from syscolumns where id=object_id(N'要查的表名')
1、首先,创建空白数据库,在数据库中创建表并插入数据,如下图所示,然后进入下一步。
2、其次,完成上述步骤后,菜单栏中选择“创建”,然后选择“查询设计”按钮。将d出“显示表”窗口,如下图所示,然后进入下一步。
3、接着,完成上述步骤后,选择“表1”并单击“添加”,如下图所示,然后进入下一步。
4、然后,完成上述步骤后,单击查询设计网格第一列中的字段行,选择“生成器”选项,打开“表达式生成器”对话框,在对话框中输入表达式“m”:Max([Age])-min([Age]),单击“确定”按钮,如下图所示,然后进入下一步。
5、随后,完成上述步骤后,点击“查询工具”选项卡中“结果”命令组的“数据表视图”命令以查看查询结果,如下图所示,然后进入下一步。
6、最后,完成上述步骤后,查询结果如下图所示。这样,问题就解决了。
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
问题描述:
现有info_200601,info_200602至info_20060X个表,其表是动态生成的,表结构相同,只是表名不同,请问如果用循环语句一次查出这些表中的内容,并以sn字段做降序
解析:
只要循环查询字符串里面FROM子句后面的表名就可以了。
如C#中:
string table="info_20060";
string sql="select ";
for(int i=1;i<=X;i++)
{
string temp=table+iToString();
sql =sql+ temp+"";
if(i<X) sql+= ",";
}
sql+=" from ";
for(int i=1;i<=X;i++)
{
string temp=table+iToString();
sql += temp;
if (i < X) sql += ",";
}
sql=sql+" order by info_200601sn desc";
最后的sn不知道你什么意思。
SQL数据库,查询包含列(字段,如名称)的数据库中的所有表的步骤如下:需要准备的材料是:计算机,sql finder。
1,首先,打开sql查询器并连接到相应的数据连接,例如测试库。
2,单击“查询”按钮并键入:select table_name来自information_schemacolumns,其中table_schema =“test”和column_name =“name”;。
3,单击“运行”按钮,将查询符合条件的表名称。
4,将查询调整为:选择'store'作为table_name,`name`来自商店,其中`name` =“A”union all选择'stu'作为table_name,`name`来自stu where`name` =“A”Union所有选择'test'作为table_name,`name`来测试`name` =“A”,单击“运行”按钮查找名称为'A'的表的名称。
以上就是关于sql server 2008 数据库表是怎样查询数据的全部的内容,包括:sql server 2008 数据库表是怎样查询数据的、sql查询数据库中有某个值的所有表、SQL server数据库里查询时新建查询怎么进行多表查询等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)