Merhabalar, Xcode ile program yazmada henüz yeniyim. Amacım çalıştığım şirkete Android ile yaptığım uygulamanın IOS için de aynısını yapmak.
MS SQL bağlantısını başarıyla gerçekleştiriyorum ama oluşturduğum bir query sonucunu tanımlanmış bir Array değişkenine nasıl populate edebilirim. Array değişkenine populate ettiğim string değerleri TableView üzerinde göstermek istiyorum.
Kodlarımda şu noktaya kadar gelebildim:
import UIKit
class SecondViewController: UIViewController,SQLClientDelegate {
func error(_ error: String!, code: Int32, severity: Int32) {
print("\(error!) \(code) \(severity)")
}
@IBOutlet weak var userListTableView: UITableView!
var client:SQLClient!
var uNames: [String] = []
override func viewDidLoad() {
super.viewDidLoad()
client = SQLClient.sharedInstance()!
//Başlangıçta internal hafızadaki DB verilerini çağırıyoruz.
strIP = UserDefaults.standard.string(forKey: "DBServerIP")!
strDBName = UserDefaults.standard.string(forKey: "DBName")!
strUName = UserDefaults.standard.string(forKey: "DBUser")!
strPass = UserDefaults.standard.string(forKey: "DBPass")!
}
@IBAction func btnUserAct(_ sender: Any) {
client = SQLClient.sharedInstance()!
client.delegate = self
client.connect(strIP,username: strUName,password: strPass,database: strDBName){ success in
if success {
self.client.execute("Select UserId from Usertbl order by Id") {
results in
for table in results as! [[[String:AnyObject]]] {
for row in table {
for (columnName, value) in row {
print(value)
//burada başarıyla UserId verilerini Xcode Debug areada başarıyla görünüyor. burada uNames Array değişkenine bu vale değerlerini nasıl populate yapabilirim?
}
}
}
self.client.disconnect()
}
}
}
}
}
extension SecondViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return uNames.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
cell.textLabel?.text = uNames[indexPath.row]
return cell
}
}