@mekev
אני מבין מדבריך שאתה מעוניין שהעמודה כן תהיה בdataGridView (ויוכלו לגשת דרך Cell["hidden col"]) רק שלא תוצג.
במידה והבנתי אותך, התשובה היא שאין לזה קשר להגדרה בשאילה, אלא שאחרי המילוי כלומר שורה אחרי השורה dataGridView.DataSource = dt; להסתיר את העמודה:
dataGridView.Columns["sodi"].Visible = false;