Skip to Main Content

MySQL Database

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

PowerShell 7.5 and Connector 9.2

Daren DaigleJun 26 2025 — edited Jun 26 2025

I have used two different IDEs (VS Code and Sapien PowerShell Studio)

As well as PowerShell itself.

I Installed the Connector/Net 9.2 and when i try to create a class in PowerShell, I have issues where it tells me classes do not exist.

My class is just a convenient wrapper around the connector to simplify calls.

Every item where a where a type class in a [] tells me the type is not found. If i run the add-type in a prompt, a script will run but PowerShell Studio does not allow for that in the IDE and I do not run it inside VSCode, i just put up with the error.s

I have added the assembly as part of the Studio's default assemblies but it still has the issue.

But the telling thing is that if i just create a class and dot run the file without adding the type on the command line before running, i get all the same errors.

using assembly 'C:\Program Files (x86)\MySQL\MySQL Connector NET 9.2\MySql.Data.dll'

class Database {
	#ANCHOR - Database
	[string]$CNString
	[MySql.Data.MySqlClient.MySqlConnection]$Connection
	[void]Connect() {
		$connectionobject = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		$connectionobject.Open()
		$this.Connection = $connectionobject
	}
	[System.Data.DataSet]GetRecords([string]$Query) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		Try {
			$DataSet = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteDataset($this.connection, $Query)
			Return $DataSet
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
		}
	}
	[System.Data.DataSet]ExecuteDataset([string]$Query, [MySql.Data.MySqlClient.MySqlParameter[]]$Params) {
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		Try {
			$DataSet = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteDataset($this.connection, $Query, [MySql.Data.MySqlClient.MySqlParameter[]]$Params)
			Return $DataSet
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[System.Data.DataSet]ExecuteDataset([string]$Query) {
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		Try {
			$DataSet = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteDataset($this.connection, $Query)
			Return $DataSet
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[int]ExecuteNonQuery([string]$Query, $Params) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		Try {
			# $connection.Open()
			$DataSet = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteNonQuery($this.connection, $Query, $Params)
			Return $DataSet
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[int]ExecuteNonQuery([string]$Query) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
 
		Try {
			# $connection.Open()
			$DataSet = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteNonQuery($this.connection, $Query, $null)
			Return $DataSet
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[String]ExecuteScalarStr([string]$Query) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString) 
		Try {
			# $connection.Open()
			$Value = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteScalar($this.connection, $Query)
			Return $Value
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[String]ExecuteScalarStr([string]$Query, $Params) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString) 
		Try {
			# $connection.Open()
			$Value = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteScalar($this.connection, $Query, $Params)
			Return $Value
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return $null
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[Int]ExecuteScalarInt([string]$Query) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		Try {
			# $connection.Open()
			$Value = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteScalar($this.connection, $Query)
			Return $Value
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return 0
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[Int]ExecuteScalarInt([string]$Query, $Params) {
		# $connection = [MySql.Data.MySqlClient.MySqlConnection]::New($this.CNString)
		# $connection = New-Object MySql.Data.MySqlClient.MySqlConnection($this.CNString)
		Try {
			# $connection.Open()
			$Value = [MySQL.Data.MySQLClient.MySQLHelper]::ExecuteScalar($this.connection, $Query, $Params)
			Return $Value
		}
		Catch {
			Write-Host "ERROR : Unable to run query : $query `n$($Error[0])"
			Return 0
		}
		Finally {
			# $This.connection.Close()
		}
	}
	[MySql.Data.MySqlClient.MySqlParameter]MakeParameter($ParameterName, $Value) { #$Type, $Size, 
		$Parameter = New-Object MySql.Data.MySqlClient.MySqlParameter($ParameterName,$Value  ) #[MySql.Data.MySqlClient.MySqlDbType]$Type,$Size
		# $Parameter.Value = 
		Return $Parameter
	}
Comments
Post Details
Added on Jun 26 2025
0 comments
88 views