Ⅰ db2用戶create table正常create function失敗,怎麼整
isindb是實例用戶嗎?如果不是實例用戶,就把isindb用戶加到實例用戶組。
Ⅱ 在sql里function是什麼意思
function 是函數的意思,創建函數create function 函數名(參數列表);
procere是存儲過程的意思,創建存儲過程create procere 存儲過程名稱
Ⅲ SQL Server 執行自定義函數時發生域錯誤
調試結果,@Epsilon_alpha這個是負數,@Epsilon_alpha=-1.66164771772615
再sqrt肯定報錯了,set @result = sqrt(@Epsilon_alpha) ;
你看看,如果出現負數了,怎麼處理,改改這就可以了
Ⅳ SQL中創建一個用戶自定義函數
CREATE
FUNCTION
DBO.tFProctsHS
(
@name
VARCHAR(10))
RETURNS
INT
--這個根據價格的類型自己修改
AS
begin
DECLARE
@jiage
INT;
select
@jiage=
jiage
from
商品表
where
name=
@name
RETURN
(@jiage)
end
--ceshi
select
DBO.tFProctsHS
('記事本')
Ⅳ mysql function語法錯誤
我用的navicat,Mysql5, 你的函數被成功載入了。不知道是不是因為客戶端不同的原因
Ⅵ SQL funtion 傳范圍值進去,如何返回值,
SQLServer:
ifobject_id('t_pv')isnotnull
droptablet_pv
go
print'droptablet_pv'
go
print'createtablet_pv'
go
createtablet_pv(idint,lineint,NAMEvarchar(10));
go
insertintot_pvvalues(1,1,'name1');
insertintot_pvvalues(2,1,'name2_1');
insertintot_pvvalues(2,2,'name2_2');
insertintot_pvvalues(3,2,'name3_2');
insertintot_pvvalues(4,4,'name4');
go
ifobject_id('dbo.f_get_select_data')isnotnull
dropfunctiondbo.f_get_select_data
go
print'dropfunctiondbo.f_get_select_data'
go
print'createfunctionf_get_select_data'
go
createfunctionf_get_select_data(@startIDint,@endIDint)
returnstable
as
return
(
select*fromt_pvwhereid>=@startIDandid<@endID
);
go
select*fromdbo.f_get_select_data(2,5)
Ⅶ 如何給普通用戶」show create function「許可權
sql server2005安全管理之用戶、角色、架構
與 許可權 2008-12-04 16:47 --打開資料庫 Use databaseName --創建角色 create role
ProgramerRole --用於創建表 存儲過程 視圖 grant create table,create
procere,create view to ProgramerRole
--execute用以執行存儲過程,alter用以創建、修改存儲過程和視圖, --並可以新建立表,但不能修改表,但也可以刪除表和對表改名了
grant select,insert,execute,alter on schema::dbo to ProgramerRole
--用於允許用戶查看 顯示估計的執行計劃(081205) grant showplan to ProgramerRole --創建登錄賬號
--create login username with password='password' --創建資料庫用戶 create user
username for login username --將用戶TestUser添加到TestRole角色中 exec
sp_addrolemember 'ProgramerRole','username ' --執行Sql Server
Profiler是伺服器級許可權,所以在master庫中授權 USE master;grant alter trace to auto;
註:據庫引擎優化顧問必須由具有系統管理員許可權的用戶進行初始化。在具有系統管理員許可權的用戶對資料庫引擎優化顧問進行初始化之後,任何是 db_owner 固定資料庫角色成員的用戶,都可以使用資料庫引擎優化顧問來優化他們擁有的資料庫上的表。
詳優化物理資料庫設計/zh-cn/library/ms187901.aspx 若要配置用戶以創建或執行 Microsoft SQL
Server 代理作業,必須先將某個現有 SQL Server 登錄名或 msdb 角色添加到 msdb 資料庫中的下列 SQL Server
代理固定資料庫角色之一:SQLAgentUserRole、SQLAgentReaderRole
或 SQLAgentOperatorRole。
默認情況下,這些資料庫角色的成員可以創建各自的作業步驟,這些作業步驟不執行其他作業步驟。如果這些非管理用戶要運行那些執行其他作業步驟類型(例如,SSIS
包)的作業,它們需要對代理帳戶具有訪問許可權。sysadmin 固定伺服器角色的所有成員都有創建、修改和刪除代理帳戶的許可權 為具體的用戶設置具體的訪問許可權
收藏 use 你的庫名go --新增用戶exec sp_addlogin 'test' --添加登錄exec
sp_grantdbaccess N'test' --使其成為當前資料庫的合法用戶exec
sp_addrolemember N'db_owner', N'test' --授予對自己資料庫的所有許可權
--這樣創建的用戶就只能訪問自己的資料庫,及資料庫中包含了guest用戶的公共表go --刪除測試用戶exec
sp_revokedbaccess N'test' --移除對資料庫的訪問許可權exec sp_droplogin N'test' --刪除登錄 如果在企業管理器中創建的話,就用: 企業管理器--安全性--右鍵登錄--新建登錄 常規項--名稱中輸入用戶名--身份驗證方式根據你的需要選擇(如果是使用windows身份驗證,則要先在操作系統的用戶中新建用戶)--默認設置中,選擇你新建的用戶要訪問的資料庫名
伺服器角色項這個裡面不要選擇任何東西
資料庫訪問項勾選你創建的用戶需要訪問的資料庫名資料庫角色中允許,勾選"public","db_ownew"
確定,這樣建好的用戶與上面語句建立的用戶一樣---------------------------------------------------------------------------
最後一步,為具體的用戶設置具體的訪問許可權,這個可以參考下面的最簡示例: --添加只允許訪問指定表的用戶:exec sp_addlogin
'用戶名','密碼','默認資料庫名' --添加到資料庫exec sp_grantdbaccess '用戶名' --分配整表許可權GRANT
SELECT , INSERT , UPDATE , DELETE ON table1 TO [用戶名] --分配許可權到具體的列GRANT
SELECT , UPDATE ON table1(id,AA) TO [用戶名]
Ⅷ create function 語句是什麼來的
1、function是SQL的函數,是由一個或多個 Transact-SQL 語句組成的子程序,可用於封裝代碼以便重新使用。Microsoft® SQL Server™ 並不將用戶限制在定義為 Transact-SQL 語言一部分的內置函數上,而是允許用戶創建自己的用戶定義函數。
2、可使用 CREATE FUNCTION 語句創建、使用 ALTER FUNCTION 語句修改、以及使用 DROP FUNCTION 語句除去用戶定義函數,每個完全合法的用戶定義函數名(database_name.owner_name.function_name) 必須唯一。
3、必須被授予 CREATE FUNCTION 許可權才能創建、修改或除去用戶定義函數,不是所有者的用戶在 Transact-SQL 語句中使用某個函數之前,必須先給此用戶授予該函數的適當許可權。
4、若要創建或更改在 CHECK 約束、DEFAULT 子句或計算列定義中引用用戶定義函數的表,還必須具有函數的 REFERENCES 許可權。
Ⅸ sql中的 function 怎麼用啊
函數就是封裝了一些操作,這些操作會返回一個值,目的就是為了公用化,方便大家在各個地方調用,而不用寫大量的冗餘代碼
SET
ANSI_NULLS
ON
GO
SET
QUOTED_IDENTIFIER
ON
GO
CREATE
FUNCTION
[dbo].[F_AddZero]
(
@Str
nvarchar(500),
@Len
INT
)
RETURNS
nvarchar(500)
AS
BEGIN
DECLARE
@rtn
nvarchar(500)
SET
@rtn=LTRIM(RTRIM(@Str))
WHILE
LEN(@rtn)
<
@Len
BEGIN
SET
@rtn='0'+
@rtn
END
RETURN
@rtn
END
比如說這樣一個函數,實現功能是在字元串首添加0
調用方法:select
dbo.F_AddZero('9',2)
這樣查詢出來的值是:09
注意:RETURNS
nvarchar(500)
這個標識函數返回類型,我這里返回的是一個字元型
Ⅹ pl/sql 中function的語法 和調用。
1. result 沒有賦值啊 ?
2. 如果是
select a.tablename into result from bas_role_table a where a.tablename=insid
萬一沒有符合條件的數據呢? 還是i會出異常
最好這樣:
select count(a.tablename) into ncount from bas_role_table a where a.tablename=insid
if ncount = 1 then
select a.tablename into result from bas_role_table a where a.tablename=insid
else
result := ''; -- 如何處理
end if;
3. 調用的地方看看你的語法
4. a.tablename=insid ,這個條件對嗎?