سؤال

ولدي جدول أنني تحويل إلى DB الوصول. لدي عمود من أسماء العملاء كتبته إلى أن أريد أن استبدال رقم العميل المناسب من النظام المحاسبي لدينا.

ولقد إنشاء جدول مع معلومات العملاء، واستعلام الذي يدل على ما يحتاج ID لإدراجها في البيانات المصدر. ما أنا تبحث عن:

UPDATE tblStarting_Data
SET CustomerID=x
WHERE TEMPCustomer=y

وأين تأتي X و Y من qryIDPerCustomer.

هل يمكنني استخدام حلقة؟ كيف يمكنني الرجوع استفسار آخر؟

هل كانت مفيدة؟

المحلول

وهناك احتمال آخر في MS Access (أسماء الكائنات اقترضت من Tomalak الجواب):

UPDATE tblStarting_Data, qryIDPerCustomer
SET tblStarting_Data.CustomerID=qryIDPerCustomer.CustomerID
WHERE tblStarting_Data.TEMPCustomer=qryIDPerCustomer.CustomerName

نصائح أخرى

وأعتقد أن التسجيل سوف تساعدك على:

UPDATE 
  tblStarting_Data AS sd 
  INNER JOIN qryIDPerCustomer AS qc ON sd.TEMPCustomer = qc.CustomerName
SET 
  sd.CustomerID = qc.CustomerID;

ويمكن التعبير عن هذا بمثابة ارتباطا شبه الاستعلام وكذلك (على الرغم من بناء الجملة الانضمام هو الأفضل):

UPDATE 
  tblStarting_Data
SET 
  CustomerID = (
    SELECT  CustomerID 
    FROM    qryIDPerCustomer
    WHERE   CustomerName = tblStarting_Data.TEMPCustomer
  )

لا حاجة للحلقة، على حد سواء البيانات تحديث كافة السجلات في tblStarting_Data في خطوة واحدة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top