sql表名
⑴ sql语句里表名前面加#号什么意思
SQL Server
1> -- 本地临时表.
2> CREATE TABLE #temp_table_local (
3> id INT,
4> value VARCHAR(10)
5> );
6> go
1> -- 全局临时表.
2> CREATE TABLE ##temp_table_global (
3> id INT,
4> value VARCHAR(10)
5> );
6> go
本地临时表,前面一个 #
全局临时表,前面两个 #
临时表在会话中创建,会话结束的时候,数据库自动删除临时表
对于 本地临时表 (#开头的) 其他会话无法访问数据与表结构
对于 全局临时表 (##开头的) 其他会话可以访问数据与表结构
SQL Server会在会话结束以后,自动删除临时表。
⑵ 怎么用Sql语句获取一个数据库中的所有表的名字
在程序中通过sql语句查询来获得某个数据库的所有表名,代码如下:
SELECT
table_name
FROM
information_schema.tables
WHERE table_schema = 'mydatabasename'
AND table_type = 'base table'
(2)sql表名扩展阅读
1,利用sys.tables目录视图查询所有表的名字,sys.tables目录视图为每个表对象返回一行. 示例语句如下:
select * from sys.tables
注意:sys.tables目录视图也只有在SQL SERVER2005及以上的版本中才能使用。
2,利用存储过程sp_tables sp_tables存储过程,可返回可在当前环境中查询的对象列表。这代表可在FROM子句中出现的任何对象。 我们可以执行如下语句:
exec sp_tables
在结果集中筛选出所有TABLE_TYPE等于TABLE的记录就是表信息了。
⑶ SQL查询表名
select * from sysobjects where xtype = 'U'
查询数据库中所有用户表的信息
你的那种想法,不好实现
⑷ SQL 查表名
你是说用户表。
查询所有表名:
SELECT NAME FROM SYSOBJECTS WHERE TYPE='U'
查询所有内容中包含某字串的表:
EXEC Full_Search '要查的字串'
赠送数据库表内容全文查找存储过程:
CREATE proc Full_Search(@string varchar(50))
as
begin
declare @tbname varchar(50)
declare tbroy cursor for select name from sysobjects
where xtype= 'u ' --第一个游标遍历所有的表
open tbroy
fetch next from tbroy into @tbname
while @@fetch_status=0
begin
declare @colname varchar(50)
declare colroy cursor for select name from syscolumns
where id=object_id(@tbname) and xtype in (
select xtype from systypes
where name in ( 'varchar ', 'nvarchar ', 'char ', 'nchar ') --数据类型为字符型的字段
) --第二个游标是第一个游标的嵌套游标,遍历某个表的所有字段
open colroy
fetch next from colroy into @colname
while @@fetch_status=0
begin
declare @sql nvarchar(1000),@j int
select @sql= 'select @i=count(1) from ' +@tbname + ' where '+ @colname+ ' like '+ '''%'+@string+ '%'''
exec sp_executesql @sql,N'@i int output',@i=@j output --输出满足条件表的记录数
if @j> 0
exec( 'select distinct 表名='''+@tbname+''','+@colname+ ' from ' +@tbname + ' where '+ @colname+ ' like '+ '''%'+@string+ '%''')
fetch next from colroy into @colname
end
close colroy
deallocate colroy
fetch next from tbroy into @tbname
end
close tbroy
deallocate tbroy
end
GO
⑸ SQL如何列出表名
列出test表的列名:
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='test')
列出数据所有表名:
select * from information_schema.tables
⑹ 如何查询SQL的表名
oracle的
select*fromdba_tab_cols
⑺ sql语句中的a.表名 c.表名 b.表名 是什么意思啊 里面 . 是什么意思
是别名 FROM T_CC_Inventory a INNER JOIN t_Stock b ON a.FStockID = b.FItemID LEFT OUTER JOIN t_AuxItem c ON a.FAuxPropID = c.FItemID INNER JOIN t_ICItem d ON a.FItemID = d.FItemID 这里面指定了T_CC_Inventory表用a来代替名称、t_Stock用b来代替等等,这样就可以减少代码量。
⑻ sql怎么获得所有表名
select name from [MSysObjects] where type=1 需要有相关权限
office 2003设置:工具 -> 选项 -> 视图 -> 勾选隐藏对象、系统对象。工具 -> 安全 -> 用户与组的权限 ,在对象名称中选定 MSysObjects ,然后权限中设置其读取权限。
office 2007设置:单击左上角图标 -> Access选项 -> 当前数据库 -> 导航 -> 导航选项 -> 勾选显示隐藏对象,显示系统对象。数据库工具选项卡 -> 用户和权限 -> 用户与组权限,对象类型选择表,对象名称选定MSysObjects,然后勾选“读取数据”权限
查询列的表名是[MSysColumns]
⑼ sql表命名规则
e,t,d都是表别名,,
为了书写简化及清晰
例如t,d都是departments的表别名,但是使用在不同位置,因为很多关联,有时候也会关联同1个表,例如:
select *
from test t1 left join test t2 on t1.id=t2.id
这里的t1,t2也是这个意思
⑽ sql中表名的意思
这个问题应该是这样的:
1、表中文名成是开发者定的,如果在项目提交的时候留有文档,那么查文档就可以
2、如果在生成表的时候他对数据写了注释,那么从数据库中也能查到(oracle中是存在视图all_tab_comments中的,其他的数据库也会有相关的表或视图)
3、如果前两项都没留那你只能通过分析前台程序源码来确定表的中文含义了。