Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

MSSQL2008 - Pyodbc - SQL sebelumnya bukan kueri

Untuk berjaga-jaga jika beberapa pengembara internet yang kesepian menemukan masalah ini, solusi oleh Torxed tidak berhasil untuk saya. Tetapi yang berikut ini berhasil untuk saya.

Saya memanggil SP yang memasukkan beberapa nilai ke dalam tabel dan kemudian mengembalikan beberapa data kembali. Cukup tambahkan berikut ini ke SP:

SET NOCOUNT ON

Ini akan bekerja dengan baik :)

Kode Python :

    query = "exec dbo.get_process_id " + str(provider_id) + ", 0"
    cursor.execute(query)

    row = cursor.fetchone()
    process_id = row[0]

SP :

USE [DBNAME]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[GET_PROCESS_ID](
    @PROVIDER_ID INT,
    @PROCESS_ID INT OUTPUT
)
AS
BEGIN
    SET NOCOUNT ON
    INSERT INTO processes(provider_id) values(@PROVIDER_ID)
    SET @PROCESS_ID= SCOPE_IDENTITY()
    SELECT @PROCESS_ID AS PROCESS_ID
END


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Permintaan PIVOT pada catatan Berbeda

  2. Apa Batasan Default di SQL Server - Tutorial SQL Server / TSQL Bagian 90

  3. Panduan pemula untuk tabel SQL

  4. DATEDIFF() Mengembalikan Hasil yang Salah di SQL Server? Baca ini.

  5. Bagaimana cara membuat daftar semua tabel di semua database di SQL Server dalam satu set hasil?