Masuk dengan Microsoft
Masuk atau buat akun.
Halo,
Pilih akun lain.
Anda memiliki beberapa akun
Pilih akun yang ingin Anda gunakan untuk masuk.

Pertanyaan:
Saya memiliki Access DB dan tabel SQL yang menyimpan informasi. Di bawah fitur Server yang Ditautkan SQL 7.0, saya telah memperbolehkan SQL untuk melihat Access DB sebagai database SQL lain. Saya juga telah menulis prosedur yang disimpan yang menyalin rekaman dari Access DB ke SQL tabel. Berjalan dari ISQL/Query Analyzer, prosedur yang disimpan berjalan dan berfungsi dengan benar. Memanggil prosedur yang disimpan dari Dexterity akan menghasilkan pesan kesalahan berikut dari SQL Server: Kueri Heterogen memerlukan opsi ANSI_NULLS dan ANSI_WARNINGS yang dapat disetel untuk
sambungan. Ini memastikan semantik kueri yang konsisten. Enable these options and then reissue your query. Bisakah saya bahkan menjalankan prosedur yang disimpan ini dari Keterkasan?


Jawaban:
Ya, tetapi kami harus sedikit mengubah prosedur yang disimpan. Alasannya gagal adalah bahwa untuk membaca SQL tabel dengan benar dalam Keterbacaan, opsi tersebut harus dinonaktifkan sehingga memanggil prosedur yang disimpan dalam masalah Keterbacaan perintah tersebut sebelum menjalankan prosedur yang disimpan. Pengguna harus memastikan data yang melanggar aturan ini tidak dimasukkan ke dalam SQL tabel. Dalam contoh di bawah ini, table_access berikut adalah tabel access. Tabel table_test adalah SQL tabel.

          
if exists (select * from sysobjects where id =

object_id('dbo.access_update') and sysstat & 0xf = 4)

drop procedure dbo.access_update

GO


create procedure dbo.access_update @O_SQL_Error_State int = NULL output


as


INSERT INTO access_table ( DOCNUMBR, DOCAMNT )

SELECT access_test.DOCNUMBR, access_test.DOCAMNT

FROM access_test


GO



Kami dapat mengubah prosedur yang disimpan untuk mengatur peringatan seperti ini:

          
if exists (select * from sysobjects where id =

object_id('dbo.access_update') and sysstat & 0xf = 4)

drop procedure dbo.access_update

GO


create procedure dbo.access_update @O_SQL_Error_State int = NULL output


as


set ANSI_NULLS ON

SET ANSI_WARNINGS ON


exec access_table2 ( DOCNUMBR, DOCAMNT )


GO



Dalam kasus ini, prosedur yang disimpan mewarisi atribut yang memanggilnya. Untuk situasi ini, Dexterity theaccess_tableprocedure panggilan yang akan menyalakan ANSI_NULLS & ANSI_WARNINGS lalu memanggil prosedur yang sebenarnya disimpan dan melewati parameter kami.


Artikel ini adalah TechKnowledge Document ID:10011

Konten TechKnowledge

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.

Apakah informasi ini berguna?

Seberapa puaskah Anda dengan kualitas bahasanya?
Apa yang memengaruhi pengalaman Anda?
Dengan menekan kirim, umpan balik Anda akan digunakan untuk meningkatkan produk dan layanan Microsoft. Admin TI Anda akan dapat mengumpulkan data ini. Pernyataan Privasi.

Terima kasih atas umpan balik Anda!

×