小编men*_*113的帖子

SQL基本问题'!='vs'<>'vs'不'

可能重复:
在T-SQL中测试不等式

嗨,

有没有什么不同使用'!='vs'<>'vs'不'?

哪一个会有最糟糕的表现

或者仅仅因为向后兼容性语法而存在?

sql t-sql sql-server

7
推荐指数
2
解决办法
351
查看次数

仅创建过程权限

我在开发数据库的SQL Server 2008中有一个要求

  1. 只有DBA(谁是数据库所有者)才能创建,更改表.开发人员不应创建或更改表.
  2. 开发人员可以在dbo模式中创建/更改存储过程/用户定义函数,并可以执行SP/UDF.
  3. 开发人员应该对表(dbo模式中的表)进行SELECT,INSERT,DELETE,UPDATE

如何使用GRANT语句实现此目的


找到了Google的示例解决方案,但仍有问题

CREATE LOGIN testdev WITH PASSWORD = 'sldkjlkjlkj 987kj//'

CREATE USER testdev

GRANT ALTER ON SCHEMA::dbo TO testdev
GRANT CREATE PROCEDURE TO testdev
GRANT SELECT, INSERT, UPDATE, DELETE ON SCHEMA::dbo TO testdev

CREATE TABLE mysig (a int NOT NULL)
EXECUTE AS USER = 'testdev'
go

CREATE PROCEDURE slaskis AS PRINT 12
go

CREATE TABLE hoppsan(a int NOT NULL) -- FAILS!
go

INSERT mysig (a) VALUES(123)
go

REVERT
go

DROP PROCEDURE slaskis
DROP TABLE …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

5
推荐指数
1
解决办法
2万
查看次数

无法创建数据库图表

在 SQL 2008 中,是否可以向开发人员授予查看和创建数据库图表的权限而不授予他们 dbo 权限?

sql database sql-server

5
推荐指数
3
解决办法
1万
查看次数

获取视图的列描述

这是从基表(fn_listextendedproperty)检索视图的列描述的方法吗?

以下语法仅列出视图中的列名称

 SELECT *
   FROM sys.columns c
   JOIN sys.views v on c.OBJECT_ID = V.OBJECT_ID
   JOIN sys.schemas s ON s.schema_id = v.schema_id
                     and V.NAME = 'v_ProductInfo'
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server

2
推荐指数
1
解决办法
1784
查看次数

标签 统计

sql ×4

sql-server ×4

t-sql ×2

database ×1