'cx' and 'zw' are text variables:
strSQL ="SELECT * FROM smt where cxnm='" & cx & "' and zwnm='" & zw & "'"
Cursor = Starter.Mysql_Jdbc.ExecQuery(strSQL)
You are of course absolutely right. I make it a habit of using backticks for column and table names: then, I don't have to worry about them being reserved words or containing special characters.