MySQL 5'te bir sorguda kullanabileceğim bağlama değişkenlerinin sayısı için bir sınır var mı? Var olduğunu varsayalım, ancak referans kılavuzunda veya Googling tarafından herhangi bir bilgi bulamıyorum. Bunu hiç bir bilgi sağlar bulabildiğimMySQL 5'te bir SQL sorgusunda kaç bağlama değişkenini kullanabilirim?
tek şey C API alakalı: http://dev.mysql.com/doc/refman/5.0/en/mysql-stmt-bind-result.html
Bu, o bellek tek limit ima görünüyor, ama bu biraz şüpheliyi görünüyor.
Güncelleştirme: bir sınırlama var!
runner.rb:47: data_replicator.rb:312:in `prepare': Prepared statement contains too many placeholders (Mysql::Error)
from data_replicator.rb:312:in `set_statement_handle_for'
from data_replicator.rb:287:in `log_query'
from data_replicator.rb:221:in `replicate_table'
from data_replicator.rb:93:in `replicate'
from data_replicator.rb:20:in `run'
Bu, arama yapmak için bana daha iyi bir şey verir! http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-statements.html itibaren
Sadece merak, kaçını geçmek istersiniz? ;-) – zerkms
Mümkün olduğunca çok. :) Yapmaya çalıştığım şey, belirli verileri bir sunucudaki bir veritabanından diğerine veri ambarı tarzı veritabanına taşımaktır. Basamaklı bir dizi sorgum var, yani bir tablodan başka bir tablodaki kayıtlar için kimlikleri olan kayıtları seçiyorum, böylece ID ile seçebiliyorum. Gruplarımın olabildiğince geniş olmasını istiyorum, ama daha büyük değil (Einstein'ın tavsiyelerini bükmek). –
Muhtemelen istemci tarafında hazırlanmış ifadeleri simüle eden bir istemci API'sini istersiniz - genellikle daha etkilidir ve bu tür sınırlardan kaçınır. Ancak, toplu ekler için, büyük INSERT deyimlerini veya LOAD DATA (LOCAL) INFILE kullanarak büyük olasılıkla giderdim. – MarkR