استكشاف الاستعلامات المخصصة في حزمة SQL الخاصة بـ Go
بينما تشير الوثائق إلى أن الاستعلام عن البيانات في Go باستخدام حزمة SQL يتطلب معرفة عدد الأعمدة و أنواع في وقت الترجمة، وهذا ليس صحيحا تماما. يوفر نوع sql.Rows حلاً لاستعلامات SQL المرنة والمخصصة.
استرجاع بيانات تعريف العمود الديناميكي
توفر طريقة الأعمدة في SQL.Rows قائمة بـ أسماء أعمدة النتائج يتيح لك هذا تحديد عدد الأعمدة التي يتم إرجاعها بواسطة استعلام عشوائي ديناميكيًا.
فحص أنواع البيانات غير المعروفة
تدعم طريقة المسح فحص القيم للأنواع غير المعروفة إلى أي منها شريحة البايت الأولية (*[]بايت) أو قيمة الواجهة{}. يمكّنك هذا من استرداد بيانات العمود دون تحديد نوعها مسبقًا.
العمل مع الاستعلامات المخصصة
من خلال الجمع بين هذه التقنيات، يمكنك تنفيذ استعلامات مخصصة واسترداد البيانات في شريحة من واجهة {} القيم:
columnNames, err := rows.Columns()
if err != nil {
// Handle error
}
columns := make([]interface{}, len(columnNames))
columnPointers := make([]interface{}, len(columnNames))
for i := 0; i بعد ذلك، ستحتوي شريحة الأعمدة على القيم التي تم فك تشفيرها لجميع الأعمدة في صف النتيجة. من خلال الاستفادة من أساليب الأعمدة والمسح الضوئي، يمكنك التعامل بشكل فعال مع الاستعلامات المخصصة في حزمة SQL الخاصة بـ Go.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3