T - SQL (2) 함수 와 저장 과정
1707 단어 SQL
목표 1. 사용자 정의 함수 작성 하기;2. 사용자 정의 저장 프로 세 스 를 작성 합 니 다.3. 클 라 이언 트 프로그램 을 작성 하여 저장 과정 을 호출 하고 selection 결과 집합, 반환 값 과 출력 파 라 메 터 를 표시 합 니 다.
코드
-- T-SQL
--
-- ID
create function get_author_id
(
@author_lname varchar(20),
@author_fname varchar(20)
)
returns table
as
return(select authors.au_id from authors
where @author_fname = authors.au_fname and @author_lname = authors.au_lname)
--
create proc get_author_titles_info
@author_lname varchar(20),
@author_fname varchar(20),
@mark varchar(5) output
as
begin
select titles.title_id, titles.title from titleauthor, titles
where titleauthor.title_id = titles.title_id and titleauthor.au_id in (
select *
from get_author_id(@author_lname, @author_fname)
)
set @mark = 'yeah!'
return 1
end
--
create table call_proc_output(
re varchar(20),
m varchar(20)
)
# Python
import pymssql
#
conn = pymssql.connect(server='localhost', database='pubs')
#
cur = conn.cursor()
# SQL
sql = '''
declare @re int
declare @mark varchar(5)
drop table call_proc_output
create table call_proc_output(
re varchar(20),
m varchar(20)
)
exec @re = dbo.get_author_titles_info 'Green', 'Marjorie', @mark output
insert into call_proc_output values (@re, @mark)
'''
cur.execute(sql)
#
result = cur.fetchall()
#
print(result)
#
#
sql = '''
select * from call_proc_output
'''
cur.execute(sql)
result = cur.fetchall()
print(result)
#
conn.close()
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Redash를 사용할 때 몰랐던 SQL을 쓰는 법을 배웠습니다.최근 redash에서 sql을 쓸 기회가 많고, 이런 쓰는 방법이 있었는지와 sql에 대해 공부를 다시하고 있기 때문에 배운 것을 여기에 씁니다. Redash란? 월별로 데이터를 표시하고 싶습니다 주별로 데이터를 표...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.